PHP array_multisort() 函數

PHP Array Reference完整的 PHP Array 參考手冊

實例

返回一個昇冪排列的數組:

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


定義和用法

array_multisort() 函數返回一個排序數組。您可以輸入一個或多個數組。函數先對第一個數組進行排序,接著是其他數組,如果兩個或多個值相同,它將對下一個數組進行排序。

注釋:字串鍵名將被保留,但是數字鍵名將被重新索引,從 0 開始,並以 1 遞增。

注釋:您可以在每個數組後設置排序順序和排序類型參數。如果沒有設置,每個數組參數會使用默認值。


語法

array_multisort(array1,sorting order,sorting type,array2,array3...)

參數 描述
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 可選。規定數組。

技術細節

返回值: 如果成功則返回 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);
?>



PHP Array Reference完整的 PHP Array 參考手冊