PHP关联数组按某一value值排序


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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM