我目前使用带有自定义函数的 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]
。