php二位數組排序

<?php
$array[] = array("id"=>20,"name"=>"li");
$array[] = array("id"=>21,"name"=>"ai");
$array[] = array("id"=>20,"name"=>"ci");
$array[] = array("id"=>22,"name"=>"di");
 
foreach ($array as $key=>$value){
 $age[$key] = $value['id'];
 
}
array_multisort($age,SORT_NUMERIC,SORT_ASC,$array);
print_r($array);
?>

運行結果:

Array (

[0] => Array ( [id] => 20 [name] => ci )

[1] => Array ( [id] => 20 [name] => li )

[2] => Array ( [id] => 21 [name] => ai )

[3] => Array ( [id] => 22 [name] => di )

)

 

定義和用法

array_multisort() 函數對多個數組或多維數組進行排序。

參數中的數組被當成一個表的列並以行來進行排序 - 這類似 SQL 的 ORDER BY 子句的功能。第一個數組是要排序的主要數組。數組中的行(值)比較爲相同的話,就會按照下一個輸入數組中相應值的大小進行排序,依此類推。

第一個參數是數組,隨後的每一個參數可能是數組,也可能是下面的排序順序標誌(排序標誌用於更改默認的排列順序)之一:

  • SORT_ASC - 默認,按升序排列。(A-Z)
  • SORT_DESC - 按降序排列。(Z-A)

隨後可以指定排序的類型:

  • SORT_REGULAR - 默認。將每一項按常規順序排列。
  • SORT_NUMERIC - 將每一項按數字順序排列。
  • SORT_STRING - 將每一項按字母順序排列。

語法

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

參數描述
array1 必需。規定輸入的數組。
sorting order 可選。規定排列順序。可能的值是 SORT_ASC 和 SORT_DESC。
sorting type 可選。規定排序類型。可能的值是SORT_REGULAR、SORT_NUMERIC和SORT_STRING。
array2 可選。規定輸入的數組。
array3 可選。規定輸入的數組。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章