當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP array_multisort()用法及代碼示例



array_multisort()是PHP中的內置函數,可用於一次對多個數組進行排序,或對每個維度的多維數組進行排序。
使用此函數,您應該記住將保留字符串鍵,但是數字鍵將是re-indexed,從0開始並增加1。

用法:

bool array_multisort($array1, sorting_order, sorting_type, $array2..)

參數:數組通常采用一個參數,即需要排序的數組。但是除此之外,該函數還可以使用兩個可選參數sorting_order和sorting_type。


  1. $array1:此參數指定我們要排序的數組。
  2. sorting_order:此參數指定使用順序,即升序或降序。此參數的默認值為SORT_ASC。即,以升序排列。為了按降序排序,我們將必須將此參數設置為SORT_DESC。
  3. sorting_type:此參數指定數組的排序選項,如下所示:
    • SORT_REGULAR:定期比較元素(標準ASCII)。
    • SORT_NUMERIC:將元素與numeric-values進行比較。
    • SORT_STRING:將元素比較為字符串值。
    • SORT_LOCALE_STRING:根據當前語言環境將元素比較為字符串。
    • SORT_NATURAL:使用“natural ordering”將元素比較為字符串。
    • SORT_FLAG_CASE:可以與SORT_STRING或SORT_NATURAL組合(按位或)以對字符串大小寫敏感ly進行排序。
  4. 如果要對多個數組進行排序,則可以將它們作為參數傳遞給$array2,$array3…,然後再傳遞它們的sorting_order,sorting_type。

返回值:array_multisort()函數返回布爾值。也就是說,如果成功,它將返回TRUE,如果失敗,則返回FALSE。

注意:如果兩個比較成員相等,則它們在排序數組中的相對順序是不確定的。

以下示例程序旨在說明array_multisort()函數:

程序1:

<?php 
  
// Input array 
$animals = array("Dog", "Cat", "Horse",  
                "Bear", "Zebra", "Lion"); 
  
// sorting array using default values 
// for sorting_order and sorting_type     
array_multisort($animals); 
          
print_r($animals); 
          
?>

輸出:

Array
(
    [0] => Bear
    [1] => Cat
    [2] => Dog
    [3] => Horse
    [4] => Lion
    [5] => Zebra
)

程序2:

<?php 
  
// Input arrays 
$array1=array("Dog", "Cat"); 
$array2=array("Fido", "Missy"); 
  
// sorting multiple arrays using default values 
// for sorting_order and sorting_type          
array_multisort($array1, $array2); 
  
// printing sorted arrays          
print_r($array1); 
print_r($array2); 
  
?> 

輸出:

Array
(
    [0] => Cat
    [1] => Dog
)
Array
(
    [0] => Missy
    [1] => Fido
)

程序3:

<?php 
  
// Input arrays 
$array1=array("Dog", "Dog", "Cat"); 
$array2=array("Pluto", "Fido", "Missy"); 
  
// sorting multiple arrays        
array_multisort($array1, SORT_ASC, $array2, SORT_DESC); 
  
// Printing sorted arrays        
print_r($array1); 
print_r($array2); 
  
?> 

輸出:

Array
(
    [0] => Cat
    [1] => Dog
    [2] => Dog
)
Array
(
    [0] => Missy
    [1] => Pluto
    [2] => Fido
)

參考:
http://php.net/manual/en/function.array-multisort.php



相關用法


注:本文由純淨天空篩選整理自akash1295大神的英文原創作品 PHP | array_multisort() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。