您的位置:首页 > 其它

二维数组针对某字段排序 - array_multisort()

2018-04-17 23:23 148 查看
/**
* 针对二维数组下的某字段排序
* @param  array    $myarr      被排序数组
* @param  string   $sort_key   排序根据字段
* @param  flag     $sort_order 排序规则:SORT_ASC、SORT_DESC
* @param  flag     $sort_type  排序类型:SORT_REGULAR、SORT_NUMERIC、SORT_STRING
* @return array                排序后的数组
*/
public function myarr_sort($myarr,$sort_key,$sort_order,$sort_type)
{
$key_arr = [];
if(is_array($myarr)){
foreach($myarr as $m){
if(is_array($m)){
$key_arr[] = $m[$sort_key];
}else{
return '我喜欢二维数组多一点';
}
}
}else{
return '我喜欢数组,你丑,不要';
}
array_multisort($key_arr,$sort_order,$sort_type,$myarr);
return $myarr;
}

其实就是,把排序字段的值从二维数组里取出来组成一个一维数组,然后通过array_multisort()函数就可以对二维数组按照该排序字段进行排序。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: