La façon de trier un tableau par valeur en PHP tout en préservant les noms de clés est d'utiliser la fonction usort() pour trier le tableau par valeur. La fonction usort() reçoit une fonction anonyme en tant que fonction de comparaison qui renvoie la différence entre les valeurs des éléments. usort() trie le tableau selon une fonction anonyme tout en gardant les clés inchangées.
Comment trier un tableau par valeur en PHP et conserver les noms de clés ?
En PHP, vous pouvez utiliser la fonctionasort()
pour trier un tableau par ordre croissant par valeur, ou la fonctionarsort()
pour trier un tableau par ordre décroissant. commande. Cependant, les deux fonctions détruisent les clés du tableau.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()
comme suit :
$students = array( 'John' => 90, 'Jane' => 85, 'Peter' => 95 );
usort($students, function($a, $b) { return $a - $b; });
Dans le code ci-dessus :< ul>usort()
accepte deux paramètres : le tableau$arr
à trier et une fonction anonyme pour comparer les valeurs des éléments.
La fonction anonyme reçoit deux éléments$a
et$b
et renvoie leur différence.
usort()
triera les éléments du tableau, en utilisant une fonction anonyme comme fonction de comparaison.
Après le tri, les noms de clés du tableau restent inchangés.
Exemple pratiqueConsidérons un tableau contenant les notes des élèves :Array ( [Jane] => 85 [John] => 90 [Peter] => 95 )
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!