Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.73 ">

usort

(PHP 3>= 3.0.3, PHP 4 )

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().