(PHP 4, PHP 5, PHP 7, PHP 8)
uasort — Trie un tableau en utilisant une fonction de rappel
Description
uasort(array
&$array
, callable
$callback
): true
Utilisé habituellement lors du tri de tableaux associatifs où
l'ordre actuel des éléments est significatif.
Note:
Si deux membres se comparent comme égaux, ils maintiennent leur ordre original.
Antérieur à PHP 8.0.0, leur ordre relatif dans le tableau trié n'est pas défini.
Note:
Réinitialise le pointeur interne du tableau au premier élément.
Liste de paramètres
-
array
-
Le tableau d'entrée.
-
callback
-
La fonction de comparaison doit retourner un entier inférieur à, égal à, ou supérieur
à 0 si le premier argument est considéré comme, respectivement, inférieur à, égal à, ou supérieur au second.
callback(mixed $a
, mixed $b
): int
Attention
Retourner des valeurs non-entières à partir de la fonction
de comparaison, telles que float, entraînera une conversion interne
de la valeur de retour du rappel en int. Ainsi, des valeurs telles que
0.99
et 0.1
seront toutes deux converties en une
valeur entière de 0
, ce qui comparera de telles valeurs comme égales.
Valeurs de retour
Retourne toujours true
.
Historique
Exemples
Exemple #1 Exemple avec uasort()
<?php
// Fonction de comparaison
function cmp($a, $b) {
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
// Tableau à trier
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
print_r($array);
// Trie et affiche le tableau résultant
uasort($array, 'cmp');
print_r($array);
?>
L'exemple ci-dessus va afficher :
Array
(
[a] => 4
[b] => 8
[c] => -1
[d] => -9
[e] => 2
[f] => 5
[g] => 3
[h] => -4
)
Array
(
[d] => -9
[h] => -4
[c] => -1
[e] => 2
[g] => 3
[a] => 4
[f] => 5
[b] => 8
)
Voir aussi
- usort() - Trie un tableau en utilisant une fonction de comparaison
- uksort() - Trie un tableau par ses clés en utilisant une fonction de rappel
- Les fonctions de tri des tableaux