PHP關聯陣列按某一value值排序
阿新 • • 發佈:2018-11-29
1.定義
二維陣列根據某個欄位排序有兩種辦法,一種是通過sort自己寫程式碼,一種是直接用array_multisort
排序函式,這裡直接說使用array_multisortd
的方式。
2.eg:
// a. 構造測試資料 $roledata = array( array("name"=>"aa","age"=>20), array("name"=>"bb","age"=>5), array("name"=>"cc","age"=>10), array("name"=>"dd","age"=>30), array("name"=>"ee","age"=>44) ); // b. 按年齡排序 SORT_ASC升序排序,SORT_DESC降序排序 // $tempArr用來儲存排序欄位 $tempArr = array(); foreach($roledata as $key=>$v){ $tempArr[$key]['age'] = $v['age']; } //降序排序 array_multisort($tempArr,SORT_DESC,$roledata); //c .列印輸出 foreach($roledata as $key=>$value){ echo $value['name']."---".$value["age"]."\n"; } // result: //ee---44 //dd---30 //aa---20 //cc---10 //bb---5