PHP uksort()
La fonction uksort() trie un tableau par clés à l’aide d’une fonction de comparaison définie par l’utilisateur.
Syntaxe
uksort(array, user_function)
Paramètres
- array(Obligatoire) : Spécifie le tableau à trier
- user_function(Optionnel) : Une chaîne qui définit une fonction de comparaison écrit par l’utilisateur. La fonction de comparaison doit renvoyer un entier <, = ou > à 0 si le premier argument est <, = ou > au deuxième argument
Valeur de retour
TRUE en cas de succès. FALSE en cas d’échec
Version PHP:
4+
Exemple:
Entrée: Array ( "n" => 6, "m" => 8, "f" => 1, "c" => 3, "e" => 2 ) Sortie: Array ( [c] => 3 [e] => 2 [f] => 1 [m] => 8 [n] => 6 )
Le code ci-dessous montre la fonction uksort() en PHP.
Pour trier le tableau d’entrée par ordre croissant, dans la fonction de comparaison, nous retournerons 1 lorsque a > b ou -1 lorsque a < b. Le programme ci-dessous illustre cela:
<?php // fonction de comparaison définie par l'utilisateur function trier($a, $b) { if ($a == $b) return 0; return ($a < $b) ? -1 : 1; } // tableau d'entrée $tab = array("n"=>6, "m"=>8, "f"=>1, "c"=>3, "e"=>2); uksort($tab, "trier"); // Afficher le tableau trié print_r($tab); ?>
Sortie:
Array ( [c] => 3 [e] => 2 [f] => 1 [m] => 8 [n] => 6 )