Maison >développement back-end >tutoriel php >Comment utiliser la fonction de tri pour trier un tableau en PHP

Comment utiliser la fonction de tri pour trier un tableau en PHP

WBOY
WBOYoriginal
2023-06-26 12:47:211641parcourir

PHP fournit la fonction de tri pour nous aider à trier les tableaux. Cette fonction prend en charge le tri des tableaux ordinaires, des tableaux associatifs et des tableaux multidimensionnels. Dans cet article, nous allons explorer comment trier un tableau à l'aide de la fonction de tri.

Utilisation de base de la fonction de tri

Lorsque la fonction de tri trie un tableau, elle modifie automatiquement l'ordre du tableau d'origine. La syntaxe de la fonction de tri est la suivante :

sort(array &$array, int $sort_flags = SORT_REGULAR): bool

Parmi eux, $array est le tableau qui doit être trié ; $sort_flags est un paramètre facultatif, utilisé pour spécifier les règles de tri, dont SORT_NUMERIC (trié par valeurs numériques) , SORT_STRING (triés par ordre alphabétique) et SORT_FLAG_CASE (insensible à la casse). Par défaut, la fonction de tri trie les chaînes par ordre alphabétique, quel que soit le type de données.

Exemple 1 : Tri d'un tableau ordinaire

Tout d'abord, nous devons créer un tableau ordinaire pour démontrer l'opération de tri de la fonction de tri sur des tableaux ordinaires. Voici un exemple :

$cars = array("Volvo", "BMW", "Toyota");
sort($cars);
print_r($cars);

Le code ci-dessus triera le tableau $cars (qui contient trois éléments "Volvo", "BMW", "Toyota") et affichera les résultats triés (classés par ordre alphabétique).

Le résultat de sortie est :

Array
(
    [0] => BMW
    [1] => Toyota
    [2] => Volvo
)

Exemple 2 : Tri de tableaux associatifs

La fonction de tri peut également être utilisée pour trier des tableaux associatifs. Voici un exemple :

$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
asort($age);
print_r($age);

Le code ci-dessus triera le tableau $age (c'est-à-dire qu'il contient trois paires clé-valeur, chaque paire clé-valeur se présente sous la forme clé => valeur) et affichera le résultat trié. résultats (selon la disposition de la taille de la valeur). Notez que lorsque nous utilisons la fonction asort pour trier le tableau, nous obtenons un tableau associatif, c'est-à-dire que les paires clé-valeur ne sont pas triées, mais sont disposées en fonction de la taille des valeurs.

Le résultat de sortie est :

Array
(
    [Peter] => 35
    [Ben] => 37
    [Joe] => 43
)

Exemple 3 : Tri de tableaux multidimensionnels

La fonction de tri peut également être utilisée pour trier des tableaux multidimensionnels. Voici un exemple :

$age = array(
    array("name"=>"Peter", "age"=>35),
    array("name"=>"Ben", "age"=>37),
    array("name"=>"Joe", "age"=>43)
);
 
function compare_age($a, $b)
{
    return $a['age'] - $b['age'];
}
 
usort($age, 'compare_age');
print_r($age);

Le code ci-dessus triera le tableau $age (c'est-à-dire qu'il contient trois sous-tableaux, chaque sous-tableau contient deux paires clé-valeur) et affichera les résultats triés (classés par âge à partir de petit à grand). Dans le code ci-dessus, nous avons personnalisé une fonction compare_age pour comparer les âges de deux sous-tableaux et renvoyer une valeur indiquant l'ordre relatif des deux sous-tableaux. Enfin, nous utilisons la fonction usort pour trier le tableau $age. La règle de tri consiste à appeler notre fonction compare_age personnalisée.

Le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => Peter
            [age] => 35
        )
 
    [1] => Array
        (
            [name] => Ben
            [age] => 37
        )
 
    [2] => Array
        (
            [name] => Joe
            [age] => 43
        )
)

En résumé, il est très simple d'utiliser la fonction de tri pour trier un tableau. Il suffit de transmettre le tableau qui doit être trié, puis de trier selon les règles correspondantes. Qu'il s'agisse d'un tableau ordinaire, d'un tableau associatif ou d'un tableau multidimensionnel, la fonction de tri peut faire l'affaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn