我有一个数组如下所示:
$array = [
'DEF' => [
['type' => 1, 'id' => 1212, 'name' => 'Jane Doe', 'current' => 1],
['type' => 1, 'id' => 3123121, 'name' => 'Door', 'current' => null],
],
'ABC' => [
['type' => 1, 'id' => 1234, 'name' => 'John Doe', 'current' => null],
],
'WW' => [
['type' => 1, 'id' => 1212, 'name' => 'Jane Doe', 'current' => 1],
['type' => 1, 'id' => 3123121, 'name' => 'Door', 'current' => null],
['type' => 1, 'id' => 64646, 'name' => 'Floor', 'current' => null],
]
];
我希望按照内部数组的项目数量进行降序排序(即首先是最多的项目),以便我得到如下数组:
[
'WW' => [
['type' => 1, 'id' => 1212, 'name' => 'Jane Doe', 'current' => 1],
['type' => 1, 'id' => 3123121, 'name' => 'Door', 'current' => null],
['type' => 1, 'id' => 64646, 'name' => 'Floor', 'current' => null],
],
'DEF' => [
['type' => 1, 'id' => 1212, 'name' => 'Jane Doe', 'current' => 1],
['type' => 1, 'id' => 3123121, 'name' => 'Door', 'current' => null],
],
'ABC' => [
['type' => 1, 'id' => 1234, 'name' => 'John Doe', 'current' => null],
]
];
有人能建议一个高效的方法吗?谢谢。
usort
http://www.php.net/manual/en/function.usort.php? - Joseph Silber