php 二维数组根据指定字段排序
$arr = [
['id' => 5, 'name' => 'E'],
['id' => 3, 'name' => 'A'],
['id' => 2, 'name' => 'C'],
['id' => 1, 'name' => 'B'],
['id' => 4, 'name' => 'D'],
];
$fields = array_column($arr, 'id');
array_multisort($fields, SORT_ASC, $arr);
// 输出排序后的数组
print_r($arr);
排序后结果:
Array
(
[0] => Array
(
[id] => 1
[name] => B
)
[1] => Array
(
[id] => 2
[name] => C
)
[2] => Array
(
[id] => 3
[name] => A
)
[3] => Array
(
[id] => 4
[name] => D
)
[4] => Array
(
[id] => 5
[name] => E
)
)