uasort

(PHP 4, PHP 5, PHP 7, PHP 8)

uasortTrie un tableau en utilisant une fonction de rappel

Description

uasort(array &$array, callable $callback): bool

Trie array sur place de telle manière que la corrélation entre les clés et les valeurs soit conservée, en utilisant une fonction de comparaison définie par l'utilisateur.

Utilisé habituellement lors du tri de tableaux associatifs où l'ordre actuel des éléments est significatif.

Note:

Si deux membres se comparent comme égaux, ils maintiennent leur ordre original. Antérieur à PHP 8.0.0, leur ordre relatif dans le tableau trié n'est pas défini.

Note:

Réinitialise le pointeur interne du tableau au premier élément.

Liste de paramètres

array

Le tableau d'entrée.

callback

La fonction de comparaison doit retourner un entier inférieur à, égal à, ou supérieur à 0 si le premier argument est considéré comme, respectivement, inférieur à, égal à, ou supérieur au second.

callback(mixed $a, mixed $b): int

Valeurs de retour

Retourne toujours true.

Historique

Version Description
8.0.0 Si callback attend un paramètre à être passé par référence, cette fonction émet désormais une E_WARNING.

Exemples

Exemple #1 Exemple avec uasort()

<?php
// Fonction de comparaison
function cmp($a$b) {
    if (
$a == $b) {
        return 
0;
    }
    return (
$a $b) ? -1;
}

// Tableau à trier
$array = array('a' => 4'b' => 8'c' => -1'd' => -9'e' => 2'f' => 5'g' => 3'h' => -4);
print_r($array);

// Trie et affiche le tableau résultant
uasort($array'cmp');
print_r($array);
?>

L'exemple ci-dessus va afficher :

Array
(
    [a] => 4
    [b] => 8
    [c] => -1
    [d] => -9
    [e] => 2
    [f] => 5
    [g] => 3
    [h] => -4
)
Array
(
    [d] => -9
    [h] => -4
    [c] => -1
    [e] => 2
    [g] => 3
    [a] => 4
    [f] => 5
    [b] => 8
)

Voir aussi

  • usort() - Trie un tableau en utilisant une fonction de comparaison
  • uksort() - Trie un tableau par ses clés en utilisant une fonction de rappel
  • Les fonctions de tri des tableaux