我给出了一个填充的数组 -
$array = array(
0 => array(2,3,4),
1 => array(2,3,7,6,8),
-- and so on
);
PHP / PHP5.x中是否有简写来根据主数组中每个键的值中的元素数量来完成对这样一个数组的排序? 感谢。
答案 0 :(得分:1)
使用usort()
function cmp($a, $b) {
if (count($a) == count($b)) {
return 0;
}
return (count($a) < count($b)) ? -1 : 1;
}
usort($array, "cmp");
这是该功能的更优化版本(仅调用count()
两次):
function cmp($a, $b) {
$numA = count($a);
$numB = count($b)
if ($numA == $numB) {
return 0;
}
return ($numA < $numB) ? -1 : 1;
}