您的位置:首页 > 编程语言 > PHP开发

PHP二维数组根据某一个字段进行排序

2017-11-28 19:01 483 查看
//定义一个数组
$arr = array(
array(
'id'   => 1,
'num' => 2,
),
array(
'id'   => 2,
'num' => 3,
),
array(
'id'   => 3,
'num' => 4,
),
array(
'id'   => 4,
'num' => 1,
)
);
$sort = array(
'direction' => 'SORT_ASC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
'field'     => 'num',       //排序字段
);
//定义一个空数组
$arrSort = array();
/**
* 根据id 和 num 分割成两个数组
*/
foreach($arr AS $key => $val){
foreach($val AS $k=>$v){
$arrSort[$k][$key] = $v;
}
}
/**
* array_multisort -- 对多个数组或多维数组进行排序
* constant — 返回一个常量的值
*/
if($sort['direction']){
array_multisort($arrSort[$sort['field']], constant($sort['direction']), $arr);
}
print_r($arr);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: