Maison  >  Article  >  développement back-end  >  Fonction PHP array_multisort() pour trier plusieurs tableaux ou tableaux multidimensionnels

Fonction PHP array_multisort() pour trier plusieurs tableaux ou tableaux multidimensionnels

黄舟
黄舟original
2017-11-08 10:16:071549parcourir

Exemple

Renvoie un tableau trié par ordre croissant :

<?php
$a=array("Dog","Cat","Horse","Bear","Zebra");
array_multisort($a);
print_r($a);
?>

Définition et utilisation

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 : Stringles noms de clés seront conservés, mais les noms de clés numériques seront réindexés, en commençant à 0 et en incrémentant 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,sorting order,sorting type,array2,array3...)
Paramètre Description
array1 Obligatoire . Spécifie un tableau.
ordre de tri Facultatif. Spécifiez l'ordre de tri. Valeurs possibles :
  • 参数 描述
    array1 必需。规定数组。
    sorting order 可选。规定排列顺序。可能的值:
    • SORT_ASC - 默认。按升序排列 (A-Z)。

    • SORT_DESC - 按降序排列 (Z-A)。

    sorting type 可选。规定排序类型。可能的值:
    • SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)。

    • SORT_NUMERIC - 把每一项作为数字来处理。

    • SORT_STRING - 把每一项作为字符串来处理。

    • SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。

    • SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序。

    • SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。

    array2 可选。规定数组。
    array3 可选。规定数组。
    SORT_ASC - Par défaut. Trier par ordre croissant (A-Z).
  • SORT_DESC - Trier par ordre décroissant (Z-A).
type de tri Facultatif. Spécifie le type de tri. Valeurs possibles :
  • SORT_REGULAR - Par défaut. Mettez chaque élément dans un ordre régulier (ASCII standard, ne changez pas le type).
  • SORT_NUMERIC - traitez chaque élément comme un nombre.
  • SORT_STRING - Traitez chaque élément comme une chaîne.
  • SORT_LOCALE_STRING - Traitez chaque élément comme une chaîne, en fonction des paramètres régionaux actuels (peut être modifié via setlocale() ).
  • SORT_NATURAL - Traitez chaque élément comme une chaîne, utilisez quelque chose comme natsort().
  • SORT_FLAG_CASE - Peut être combiné (OU au niveau du bit) avec SORT_STRING ou SORT_NATURAL pour trier les chaînes, sans tenir compte de la casse.
array2 td> Facultatif. Spécifie un tableau.
array3 Facultatif. Spécifie un tableau.

技术细节

返回值: 如果成功则返回 TRUE,如果失败则返回 FALSE。
PHP 版本: 4+
更新日志 排序类型 SORT_NATURAL 和 SORT_FLAG_CASE 是在 PHP 5.4 中新增的。

排序类型 SORT_LOCALE_STRING 是在 PHP 5.3 中新增的。

更多实例

实例 1

返回一个升序排列的数组:

<?php
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>

实例 2

当两个值相同时如何排序:

<?php
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>

实例 3

使用排序参数:

<?php
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,SORT_ASC,$a2,SORT_DESC);
print_r($a1);
print_r($a2);
?>

实例 4

合并两个数组,并按数字降序排列:

<?php
$a1=array(1,30,15,7,25);
$a2=array(4,30,20,41,66);
$num=array_merge($a1,$a2);
array_multisort($num,SORT_DESC,SORT_NUMERIC);
print_r($num);
?>


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