php array_multisort Explication détaillée et exemple de code pour trier les tableaux

高洛峰
Libérer: 2023-03-04 17:00:01
original
1366 Les gens l'ont consulté

La fonction array_multisort() en php peut être utilisée pour trier plusieurs tableaux à la fois, ou pour trier des tableaux multidimensionnels selon une certaine dimension ou plusieurs dimensions. Cet article vous explique comment utiliser la fonction array_multisort.

La fonction array_multisort() renvoie un tableau trié. Vous pouvez saisir un ou plusieurs tableaux. La fonction trie d'abord le premier tableau, puis les autres tableaux, et si deux valeurs ou plus sont identiques, elle trie le tableau suivant.

Remarque : les noms de clés de chaîne seront conservés, mais les noms de clés numériques seront réindexés, en commençant à 0 et en augmentant de 1.

Remarque : Vous pouvez définir les paramètres d'ordre de tri et de type de tri après chaque tableau. S'il n'est pas défini, chaque paramètre du tableau utilisera sa valeur par défaut.

Syntaxe

array_multisort(array1,ordre de tri,type de tri,array2,array3...)

Description du paramètre

php array_multisort 对数组进行排序详解及实例代码

Valeur de retour

Renvoie VRAI en cas de succès, ou FAUX en cas d'échec.

Description

La fonction array_multisort() trie plusieurs tableaux ou tableaux multidimensionnels.

Le tableau du paramètre est traité comme une colonne de table et trié par ligne - ceci est similaire à la fonctionnalité de la clause ORDER BY de SQL. Le premier tableau est le tableau principal à trier. Si les lignes (valeurs) du tableau sont identiques, elles seront triées en fonction de la taille de la valeur correspondante dans le tableau d'entrée suivant, et ainsi de suite.

Le premier paramètre est un tableau, et chaque paramètre suivant peut être un tableau ou l'un des indicateurs d'ordre de tri suivants (l'indicateur de tri est utilisé pour modifier l'ordre de tri par défaut) :

SORT_ASC - Par défaut, trier par ordre croissant. (A-Z)
SORT_DESC - Trier par ordre décroissant. (Z-A)

Le type de tri peut alors être précisé :

SORT_REGULAR - par défaut. Disposez chaque élément dans un ordre régulier.
SORT_NUMERIC - Triez chaque élément par ordre numérique.
SORT_STRING - Triez chaque élément par ordre alphabétique.

Exemple 1 :

Trier un tableau multidimensionnel

<?php
 $ar = array(
    array("10",11,100,100,"a"),
    array(1,2,"2",3,1)
   );
 array_multisort($ar[0], SORT_ASC,SORT_STRING,$ar[1],SORT_NUMERIC,SORT_DESC);
 var_dump($ar);
?>
Copier après la connexion

Dans cet exemple, après tri, le premier tableau deviendra "10", 100, 100, 11, "a" (traité comme une chaîne par ordre croissant). Le deuxième tableau contiendra 1, 3, "2", 2, 1 (traités comme des nombres par ordre décroissant).

Résultats en cours d'exécution :

array(2) {
 [0]=> array(5) {
  [0]=> string(2) "10"
  [1]=> int(100)
  [2]=> int(100)
  [3]=> int(11)
  [4]=> string(1) "a"
 }
 [1]=> array(5) {
  [0]=> int(1)
  [1]=> int(3)
  [2]=> string(1) "2"
  [3]=> int(2)
  [4]=> int(1)
 }
}
Copier après la connexion

Exemple 2 :

Tri insensible à la casse

SORT_STRING et SORT_REGULAR sont sensibles à la casse et les lettres majuscules seront triées avant les lettres minuscules.
Pour effectuer un tri insensible à la casse, triez par lettres minuscules du tableau d'origine.

<?php
 $array=array(&#39;Alpha&#39;,&#39;atomic&#39;,&#39;Beta&#39;,&#39;bank&#39;);
 $array_lowercase=array_map(&#39;strtolower&#39;,$array);
 array_multisort($array_lowercase,SORT_ASC,SORT_STRING,$array);
 print_r($array);
?>
Copier après la connexion

Résultats en cours d'exécution :

Array
(
  [0] => Alpha
  [1] => atomic
  [2] => bank
  [3] => Beta
)
Copier après la connexion

Merci d'avoir lu, j'espère que cela pourra aider tout le monde , merci à tous. Soutenez ce site !

Pour plus d'explications détaillées sur php array_multisort et des exemples de codes pour trier les tableaux, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal