array_multisort — 對多個數組或多維陣列進行排序 成功返回true 否則false
輸入數組被當成一個表的列並以行來排序這類似於 SQL 的 ORDER BY 子句的功能。第一個數組是要排序的主要數組。數組中的行(值)比較為相同的話就按照下一個輸入數組中相應值的大小來排序,依此類推。?
第一個參數必須是一個數組。接下來的每個參數可以是數組也可以是下面列出的排序標誌。
排序次序標誌:
? SORT_ASC – 按照上升順序排序
?SORT_DESC – 按照下降順序排序
?排序類型標誌:
SORT_REGULAR – 將項目按照通常方法比較
?SORT_NUMERIC – 將項目按照數值比較
?SORT_STRING – 將項目按照字串比較
SORT_STRING 和 SORT_REGULAR 都是區分大小寫字母的,大寫字母會排在小寫字母之前。 ?
?每個數組之後不能指定兩個同類的排序標誌。每個數組後指定的排序標誌僅對該數組有效 – 在此之前為預設值 SORT_ASC 和 SORT_REGULAR。
//字串鍵名的話將被保留,但是數字鍵將被重新索引,從 0 開始,並以 1 遞增。
對二維數組排序 要求 ID降序 name升序?
$arrData =[['id' => 1, 'name' => 'haha'],['id' => 0, 'name' => 'aaha'],['id' => 2, 'name' => 'caha'],['id' => 4, 'name' => 'zaha'],['id' => 16, 'name' => 'daha'],];/*現在有了包含有行的數組,但是 array_multisort() 需要一個包含列的數組,因此用以下代碼來取得列,然後排序。 ?*/foreach($arrDataas$key=>$value){?$id[$key]=$value['id'];$arr[$key]=$value['name'];}// 把排序數組 $arrData 作為最後一個參數?array_multisort($id, SORT_DESC, $arr, SORT_ASC, $arrData);print_r($arrData);
轉載或分享請註明地址謝謝:http://blog.csdn.net/w19981220
著作權聲明:尊重他人的勞動成果就是尊重自己謝謝!!
以上就介紹了array_multisort — 對多個數組或多維陣列進行排序,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。