我有这个数组:
$number= array(
array([0]=>2,[1]=>2)
array([0]=>2,[1]=>2,[2]=>2,[3]=>2)
array([0]=>2,[1]=>2,[2]=>2)
array([0]=>2,[1]=>2)
)
我想要这个数组中的最大索引。对于这个数组是4。
答案 0 :(得分:8)
你可能是这个意思:
echo max(array_map('count', $number));
答案 1 :(得分:1)
编写一个迭代数组的循环。对于数组中的每个数组,获取该数组中的元素数,如果它大于目前为止的最大数(例如$max
),则将$max
设置为元素数。然后,当您完成数组上的循环时,$max
会得到您的答案。
答案 2 :(得分:0)
使用count()函数:
$max = count($number); // returns 4
<强>更新强>
你的问题不够明确。提供的注释和答案表明您希望获得数组中存在的元素数量,这些元素的元素多于$number
数组中的其他数组。在这种情况下,@xdazz
答案是最适合您的。编写像这样的$number
数组更好更正确:
$number = array(
array(1, 2),
array(1, 2, 3, 4, 5),
array(1, 2, 3),
array(1, 2)
);
答案 3 :(得分:0)
此代码经过测试并适用于您的阵列。当然,带有count func的array_map是Dimention 1 max count
的最佳解决方案<?php
$number= array(
array(0=>2,1=>2),
array(0=>2,1=>2,2=>2,3=>2),
array(0=>2,1=>2,2=>2),
array(0=>2,1=>2),
);
$ak = array_values($number);
for($i;$i<count($number);$i++){
$c[] = count($ak[$i]);
}
echo max($c);
?>
答案 4 :(得分:0)
您可以尝试以下代码:
$data = array(
"apples" =>
array("red", "yellow", "pineapples","enam"),
"bananas" =>
array("small", "medium", "big","enam","enam"),
"vegs" =>
array("potatoes", "carrots", "onions")
);
foreach($data as $in_arr){
$count = count($in_arr);
if($count>$max)$max = $count;
}
echo "The max:".$max;