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 遞增。
/*
現在有了包含有行的數組,但是 array_multisort() 需要一個包含列的數組,因此用以下代碼來取得列,然後排序。
*/
foreach($arrData as $key=>$value) { $id[$key]=$value['id']; $arr[$key]=$value['name']; }
// 把排序數組 $arrData 作為最後一個參數
array_multisort($id, SORT_DESC, $arr, SORT_ASC, $arrData); print_r($arrData);
版權聲明:轉載分享請表明地址!!謝謝