根据子数组的大小对多维数组进行排序

问题描述 投票:0回答:2

假设我有一个数组数组,并且我想根据子数组中的索引数量对大数组进行排序,最有效的方法是什么?

这就是我目前所拥有的

$sortorder = array_map('count', $largearray);
array_multisort($sortorder, $largearray);

还有比这更好的吗?

php arrays
2个回答
3
投票
usort($array, create_function('$a, $b', 'return bccomp(count($a), count($b));'));

0
投票

以下是适用于 PHP8+ 的答案:

usort($array, function ($a, $b) { return sizeof($b) - sizeof($a); });
© www.soinside.com 2019 - 2024. All rights reserved.