Fonction usort() | Développement Web

Fonction usort()

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
     )
   */