Manuel PHP
Précédent |  | Suivant

# usort

(3.0.3 - 3.0.18 only, PHP 4 >= 4.0.0)

usort -- Trie un tableau en utilisant une fonction de comparaison définie par l'utilisateur

## Description

``void usort` (array array, function cmp_function)`

usort() va trier un tableau avec ses valeurs, en utilisant une fonction définie par l'utilisateur. Si un tableau doit être trié avec un critère complexe, il est préférable d'utiliser cette méthode.

La fonction de comparaison `cmp_function` doit retourner un entier, qui sera inférieur, égal ou supérieur à zéro suivant que le premier argument est considéré comme plus petit, égal ou plus grand que le second argument. Si les deux arguments sont égaux, leur ordre est indéfini.

Exemple 1. Exemple avec usort()
    <?php
      function cmp($a,$b) {
        if ($a == $b) return 0;
        return ($a < $b) ? -1 : 1;
      }
      $tableau = array(3,2,5,6,1);
      usort($a, "cmp");
      while(list($cle,$valeur) = each($tableau)) {
        echo "$cle: $valeur\n";
      }
    ?>

Cet exemple va afficher : `0: 6 1: 5 2: 3 3: 2 4: 1`

> Note : Evidemment dans ce cas trivial, rsort() serait plus approprié.

Avertissement
Les bibliothèques de tri rapides sur lesquelles reposent PHP peuvent le conduire à un plantage, si la fonction de comparaison ne retourne pas une valeur cohérente.

Voir aussi array-multisort(), arsort(), asort(), krsort(), ksort(), natsort(), natcasesort(), rsort(), sort(), uasort() et uksort().

Précédent | Sommaire | Suivant
uksort | Niveau supérieur | Aspell