Die Möglichkeit, ein Array in PHP nach Wert zu sortieren und dabei die Schlüsselnamen beizubehalten, besteht darin, die Funktion usort() zu verwenden, um das Array nach Wert zu sortieren. Der Funktion usort() wird eine anonyme Funktion als Vergleichsfunktion übergeben, die die Differenz der Elementwerte zurückgibt. usort() sortiert das Array nach einer anonymen Funktion, während die Schlüssel unverändert bleiben.
Wie sortiere ich ein Array nach Wert in PHP und behalte Schlüsselnamen bei?
In PHP können Sie die Funktion asort()
verwenden, um ein Array in aufsteigender Reihenfolge nach Wert zu sortieren, oder die Funktion arsort()
, um ein Array in absteigender Reihenfolge zu sortieren Befehl. Allerdings zerstören beide Funktionen die Schlüssel im Array. asort()
函数根据值对数组进行升序排序,或使用 arsort()
函数进行降序排序。但是,这两个函数都会破坏数组中的键名。
如果要按值排序数组,同时保持键名,可以使用 usort()
函数,如下所示:
$arr = array( 'a' => 10, 'b' => 5, 'c' => 20 ); usort($arr, function($a, $b) { return $a - $b; }); print_r($arr);
输出:
Array ( [b] => 5 [a] => 10 [c] => 20 )
在上面的代码中:
usort()
接受两个参数:要排序的数组 $arr
和一个用于比较元素值的匿名函数。$a
和 $b
,并返回它们的差值。usort()
usort()
wie folgt verwenden: $students = array( 'John' => 90, 'Jane' => 85, 'Peter' => 95 );
usort($students, function($a, $b) { return $a - $b; });
Im obigen Code: < ul> usort()
akzeptiert zwei Parameter: das Array zum Sortieren von $arr
und eine anonyme Funktion zum Vergleichen der Elementwerte.
Die anonyme Funktion empfängt zwei Elemente $a
und $b
und gibt deren Differenz zurück.
usort()
sortiert die Elemente im Array und verwendet dabei eine anonyme Funktion als Vergleichsfunktion.
Nach dem Sortieren bleiben die Schlüsselnamen im Array unverändert.
🎜🎜🎜Praktisches Beispiel🎜🎜🎜Stellen Sie sich ein Array mit Schülernoten vor: 🎜Array ( [Jane] => 85 [John] => 90 [Peter] => 95 )
Das obige ist der detaillierte Inhalt vonWie behalte ich Schlüsselnamen bei, nachdem ich das PHP-Array nach Wert sortiert habe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!