Maison  >  Article  >  développement back-end  >  Comment distinguer la taille du tri du tableau php

Comment distinguer la taille du tri du tableau php

PHPz
PHPzoriginal
2023-04-20 13:52:44518parcourir

En programmation PHP, le tri des tableaux est une exigence très courante. Lors du tri d’un tableau, il faut savoir distinguer la taille des éléments. Cet article explique comment dimensionner les tableaux en PHP et comment trier les tableaux.

Comparaison de la taille des éléments du tableau

En PHP, nous pouvons utiliser ces opérations ==, ===, !=, <>, !==, <, >, <=, >= symbole pour comparer la taille des éléments. Cependant, ces opérateurs peuvent être utilisés sur des types de données scalaires (tels que int, float, string, etc.), mais ils poseront certains problèmes lorsqu'ils seront utilisés sur des tableaux.

Lors de l'utilisation des opérateurs <, >, <=, >= pour comparer des tableaux, PHP convertira en interne le tableau en chaîne, puis comparera les tailles des chaînes, ce qui peut facilement produire des résultats inattendus.

Afin d'éviter de tels problèmes, nous devons utiliser des fonctions spéciales pour comparer les éléments des tableaux. Voici quelques fonctions couramment utilisées.

Fonction strcmp

La fonction strcmp est utilisée pour comparer les tailles de deux chaînes et renvoyer un entier. Si la première chaîne est inférieure à la deuxième chaîne, un nombre négatif est renvoyé ; si les deux chaînes sont égales, 0 est renvoyé ; si la première chaîne est supérieure à la deuxième chaîne, un nombre positif est renvoyé.

Par exemple, nous pouvons utiliser la fonction strcmp pour comparer la taille de deux mots "hello" et "world" comme suit :

echo strcmp("hello", "world"); // 输出 -15

Dans cet exemple, "hello" est plus petit que "world", donc la fonction strcmp renvoie un nombre négatif.

fonction de tri

la fonction de tri est utilisée pour trier un tableau par ordre croissant. La fonction de tri trie le tableau sur place, c'est-à-dire que les valeurs clés du tableau ne changeront pas après le tri. La fonction

sort accepte un paramètre de tableau, par exemple :

$numbers = array(3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5);
sort($numbers);
print_r($numbers); // 输出 Array ( [0] => 1 [1] => 1 [2] => 2 [3] => 3 [4] => 3 [5] => 4 [6] => 5 [7] => 5 [8] => 5 [9] => 6 [10] => 9 )

Dans l'exemple ci-dessus, la fonction de tri trie le tableau $numbers par ordre croissant et imprime les résultats triés.

Fonction rsort

La fonction rsort est la même que la fonction de tri et est utilisée pour trier les tableaux. La différence est que la fonction rsort est utilisée pour trier un tableau par ordre décroissant. La fonction

rsort effectue également des opérations sur place sur les tableaux, par exemple :

$numbers = array(3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5);
rsort($numbers);
print_r($numbers); // 输出 Array ( [0] => 9 [1] => 6 [2] => 5 [3] => 5 [4] => 5 [5] => 4 [6] => 3 [7] => 3 [8] => 2 [9] => 1 [10] => 1 )

Dans l'exemple ci-dessus, la fonction rsort trie le tableau $numbers par ordre décroissant et imprime les résultats triés.

Fonction Array_multisort

La fonction Array_multisort est une fonction de tri puissante qui peut trier des tableaux multidimensionnels. La fonction array_multisort accepte un ou plusieurs arguments de tableau et trie ces tableaux selon des règles spécifiées.

Par exemple, nous pouvons utiliser la fonction array_multisort pour trier les scores d'un groupe d'étudiants :

$students = array(
    array('name' => 'Tom', 'score' => 90),
    array('name' => 'John', 'score' => 80),
    array('name' => 'Mike', 'score' => 85),
    array('name' => 'Mary', 'score' => 95),
    array('name' => 'Lisa', 'score' => 88)
);

foreach ($students as $key => $value) {
    $scores[$key] = $value['score'];
    $names[$key] = $value['name'];
}

array_multisort($scores, SORT_DESC, $names, SORT_ASC, $students);

print_r($students);

Dans l'exemple ci-dessus, nous stockons d'abord les scores et les noms des étudiants dans deux tableaux $scores et $names respectivement. Nous utilisons ensuite la fonction array_multisort pour trier les tableaux $scores et $names et appliquons les résultats triés au tableau $students. Enfin, nous imprimons le tableau $students pour obtenir les résultats triés par scores par ordre décroissant et par noms par ordre croissant.

Résumé

Lors du tri d'un tableau en PHP, il faut savoir distinguer la taille des éléments. Pour éviter des résultats inattendus, nous devons utiliser des fonctions spécialisées à des fins de comparaison. Cet article présente certaines fonctions de comparaison et fonctions de tri couramment utilisées, qui peuvent aider les lecteurs à écrire rapidement du code efficace.

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