多维数组排序,如果a相等,那么比较b,b相等再比较c,排序完在生成个新字段sort 作为标识$arr = [ 1 => [ 'a' => 1, 'b' => 2, 'c' => 4, ], 0 => [ 'a' => 1, 'b' => 2, 'c' => 3, ], 5 => [ 'a' => 3, 'b' => 2, 'c' => 3, ], 2 => [ 'a' => 2, 'b' => 2, 'c' => 3, ], 4 => [ 'a' => 4, 'b' => 2, 'c' => 3, ], ];
1 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
好吧 ,我是这样用的
<?php
$a = $b = $c = [];
array_map(function( $value ) use ( &$a,&$b,&$c ){
array_push($a, $value['a']);
array_push($b, $value['b']);
array_push($c, $value['c']);
} , $arr);
$count = $arr;
var_dump($count);
array_multisort(
$a,SORT_ASC,
$b,SORT_ASC,
$c,SORT_ASC,
$arr
);
var_dump($arr);
添加回答
举报
0/150
提交
取消
