Maison >développement back-end >Problème PHP >Comment trier un tableau unidimensionnel par ordre croissant en php (sans supprimer les doublons)
Trois méthodes de tri ascendant : 1. Utilisez la fonction sort() pour trier les éléments du tableau par ordre croissant, la syntaxe est "sort($arr, sort mode);" 2. Utilisez la fonction asort() pour trier les éléments du tableau selon le tableau associatif Les valeurs clés du tableau associé sont triées par ordre croissant, la syntaxe est "asort($arr, mode de tri)" 3. A l'aide de la fonction ksort(), les valeurs clés ; du tableau associé peut être trié par ordre croissant, la syntaxe est "ksort($arr, mode de tri)".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
En PHP, il existe trois méthodes courantes pour trier les tableaux unidimensionnels par ordre croissant sans déduplication :
sort() : Trie les éléments du tableau par ordre croissant
asort() : Trie le tableau par ordre croissant selon la valeur clé du tableau associatif
ksort() : Trie le tableau par ordre croissant selon le nom de la clé du tableau associatif
1. Utilisez la fonction sort()
sort() pour trier les éléments du tableau par ordre croissant (de petit à grand, de bas en haut).
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2); var_dump($arr2); ?>
Sortie :
La fonction sort() a deux paramètres : $array (obligatoire) et $sortingtype (peut être omis).
Parmi eux, le paramètre $sortingtype est utilisé pour définir le mode de tri de la fonction et spécifier comment comparer les éléments/items du tableau. La valeur par défaut est "SORT_REGULAR". Le paramètre
$sortingtype peut être défini sur les valeurs suivantes :
0 = SORT_REGULAR : compare les éléments du tableau normalement sans changer leur type (valeur par défaut)
1 = SORT_NUMERIC : traite les éléments du tableau comme des nombres ;
2 = SORT_STRING : traite les éléments du tableau comme des chaînes ;
3 = SORT_LOCALE_STRING : en fonction des paramètres régionaux actuels (peut être modifié par setlocale()), compare les éléments du tableau comme des chaînes.
4 = SORT_NATURAL : Semblable à natsort(), il trie les chaînes dans "l'ordre naturel" pour chaque élément du tableau. C'est nouveau dans PHP5.4.0.
5 = SORT_FLAG_CASE : Peut être combiné avec SORT_STRING ou SORT_NATURAL (opération sur bit OR), chaîne de tri insensible à la casse.
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1,2); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2,1); var_dump($arr2); ?>
Résultat de sortie :
La fonction sort() ne maintiendra pas la relation d'index, mais supprimera le nom de clé d'origine dans le tableau et lui attribuera un nouveau nom de clé numérique.
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); sort($age); var_dump($age); ?>
Sortie :
La fonction sort() peut être utilisée pour les tableaux (tableaux numériques) où la relation entre les valeurs et les index n'est pas si importante, mais elle ne convient pas aux tableaux où la relation entre les valeurs et les index sont importants. À ce stade, vous devez utiliser les fonctions asort() et ksort().
2. Utilisez la fonction asort()
La fonction asort() triera le tableau associatif par ordre croissant en fonction des valeurs clés et ne modifiera pas les noms de clés dans le tableau d'origine.
header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); asort($age); var_dump($age); ?>
Sortie :
La fonction asort() a également deux paramètres. Les valeurs des paramètres sont les mêmes que la fonction sort(), vous pouvez vous y référer.
3. Utilisez la fonction ksort()
La fonction ksort() triera le tableau associatif par ordre croissant en fonction des noms de clés, et ne modifiera pas les noms de clés dans le tableau d'origine.
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); ksort($age); var_dump($age); ?>
Sortie :
<?php header("Content-type:text/html;charset=utf-8"); $arr= array("l"=>"lemon", "o"=>"orange", "b"=>"banana", "a"=>"apple"); ksort($arr); var_dump($arr); ?>
Sortie :
La fonction ksort() a également deux paramètres, les valeurs des paramètres sont les mêmes que la fonction sort(), vous pouvez vous y référer .
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!