php对二维数据进行排序


PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义。

方法一:(经验证,成功)

 
作用:对二维数组进行指定key排序
参数:$arr 二维数组 ,$shortKey 需要排序的列,$short 排序方式 $shortType 排序类型
 
function multi_array_sort($arr,$shortKey, $short=SORT_DESC,$shortType=SORT_REGULAR)
{
foreach ($arr as $key => $data){
$name[$key] = $data[$shortKey];
}
array_multisort($name,$shortType,$short,$arr);
return $arr;
}
 
方法二:是对一个给定的二维数组按照指定的键值进行排序
 
function array_sort($arr,$keys,$type='asc'){ 
$keysvalue = $new_array = array();
foreach ($arr as $k=>$v){
$keysvalue[$k] = $v[$keys];
}
if($type == 'asc'){
asort($keysvalue);
}else{
arsort($keysvalue);
}
reset($keysvalue);
foreach ($keysvalue as $k=>$v){
$new_array[$k] = $arr[$k];
}
return $new_array; 


免责声明!

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



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