我想知道如何计算矩阵元素的总数? count()
函数告诉我数组元素的数量,但如果我有m [n] [n],我怎么知道有多少元素?谢谢
这是var_dump
:
答案 0 :(得分:1)
修改强>
对于元素的任何维数组计数:
$food = array('fruits' => array('orange', 'banana', 'apple'),"dsd"=>array('orange', 'banana', 'apple','dsfdsf'),'sa'=>array('1','1','1','1','1','1','1','1','1','1','1'));
$arr = (array_map('count', $food));
//print_r($arr);
$c = 0;
foreach($arr as $k => $v){
$c += $v;
}
echo $c;
最大数组计数: 现场演示:https://eval.in/87611
echo max(array_map('count', $your2dArray));
它将返回2d数组的计数
如果你想得到所有元素的数量:
$array[0][0] = "one";
$array[0][1] = "two";
$array[1][0] = "three";
$array[1][1] = "four";
$c=0;
foreach($array as $a){
$c =$c+count($a);
}
echo $c;
答案 1 :(得分:1)
只计算每个子数组元素。
$count = 0;
foreach ($array as $value)
{
$count += count($value);
}
答案 2 :(得分:0)
这适用于2d,3d,4d阵列:
$myArray = array(array(1,2,3,4,5), array(6,7), array(array(8,9)));
$countRec = count($myArray, COUNT_RECURSIVE);
print $countRec;
但是这会因为计算结果而返回13:第一深度中的元素+第二深度中的元素......
所以它的计算是:2 + 8 + 1 + 2 = 13