La fonction usort permet de trier un tableau à l’aide d’une fonction utilisateur de comparaison.
Voir aussi :fonction uasort, fonction uksort.
Utilisation de la fonction usort()
La signature de la fonction usort est la suivante :
usort ( $array, $fonction );
Dans cet exemple, nous allons classer les éléments du tableau $array en fonction de la longueur de chaîne de ses éléments.
/* Déclaration de la fonction de comparaison */ function compareStrlen($x, $y){ if(strlen($x) > strlen($y)) return 1; return -1; } /* Déclaration du tableau */ $array = array('rr' => 'fonction', 'tttt' => 'usort', 'ind' => 'les tableaux en php'); usort( $array, 'compareStrlen') ; /* $array contient : Array ( [0] => usort [1] => fonction [2] => les tableaux en php ) */ Ici, les clés ('rr', 'tttt', 'ind') ont été remplacées par des index (0, 1, 2)
La fonction uasort quant à elle, garde l’association clés /valeurs :
uasort( $array, 'compareStrlen') ; /* $array contient : Array ( [tttt] => usort [rr] => fonction [ind] => les tableaux en php ) */
La fonction uksort trie quant à elle les clés :
uksort( $array, 'compareStrlen') ; /* $array contient : Array ( [rr] => fonction [ind] => les tableaux en php [tttt] => usort ) */