二维数组根据指定多个字段排序/指定某个字段排序
程序员文章站
2022-07-03 09:33:14
...
二维数组根据指定某个字段排序
按照某一个字段排序
$sort = array(
'direction' => 'SORT_ASC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
'field' => 'limit', //需要排序的字段
);
$arrSort = array();
foreach($arr AS $uniqid => $row){
foreach($row AS $key=>$value){
$arrSort[$key][$uniqid] = $value;
}
}
array_multisort($arrSort[$sort['field']], constant($sort['direction']), $arr);
var_dump($arr);
二维数组根据指定多个字段排序
按照多字段排序
foreach ( $arr as $key => $row ){
$field1[$key] = $row ['sort'];
$field2[$key] = $row ['limit'];
//$field3[$key] = $row ['order'];
}
array_multisort( $field1, SORT_ASC,$field2, SORT_ASC, $arr);
var_dump($arr);
模拟数据
$arr = [
[
'order'=>1,
'limit'=>5,
'sort'=>1
],
[
'order'=>3,
'limit'=>4,
'sort'=>1
],
[
'order'=>2,
'limit'=>4,
'sort'=>3
],
[
'order'=>4,
'limit'=>1,
'sort'=>10
]
];
上一篇: 实现一个 Promise
下一篇: 实现一个Promise