我目前使用带有自定义函数的usort来对多维数组进行排序:
usort($arr, function($a, $b) {
return $a['count'] - $b['count'];
});
这将对数组进行排序,但它会丢失关键信息。给定数组:
Array
(
[3] => Array
(
[foo] => bar
[count] => 11
)
[7] => Array
(
[foo] => baz
[count] => 1
)
)
usort
将产生:
Array
(
[0] => Array
(
[foo] => baz
[count] => 1
)
[1] => Array
(
[foo] => bar
[count] => 11
)
)
我想按count
排序,但保留密钥[3]
和[7]
。很遗憾,usort
会将密钥设置为[0]
和[1]
。