傳回一個升序排列的陣列:
<?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 - 預設。按升序排列(AZ)。 SORT_DESC - 按降序排列(ZA)。 |
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 中新增的。 |
傳回一個升序排列的陣列:
<?php$a1=array("Dog","Cat");$a2=array("Fido","Missy");array_multisort($a1,$a2);print_r($a1);print_r($a2 );?>當兩個值相同時如何排序:
<?php$a1=array("Dog","Dog","Cat");$a2=array("Pluto","Fido","Missy");array_multisort($a1,$a2);print_r( $a1);print_r($a2);?>使用排序參數:
<?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);?>合併兩個數組,並依數字降序排列:
<?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);?>