旗下导航:搜·么
当前位置:网站首页 > PHP教程 > 正文

php统计多维数组元素个数的要领引见(附代码)【php教程】

作者:搜搜PHP网发布时间:2019-11-26分类:PHP教程浏览:118


导读:本篇文章给人人带来的内容是关于php统计多维数组元素个数的要领引见(附代码),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。平常情况下,运用count能够直...
本篇文章给人人带来的内容是关于php统计多维数组元素个数的要领引见(附代码),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。

平常情况下,运用count能够直接统计数组的元素个数

$arr = [
'a',
'b',
];
echo count($arr);//2

然则碰到二位数组的时刻,我们想统计第二层的元素个数,这个时刻能够运用count函数的第二个参数,
count($arr, $mode = 0);$mode(0:统计一维的一切元素,1:轮回统计遍历元素)
在$mode=1的时刻,count函数会轮回统计元素的个数,假如元素$a是个数组则数目会总数会增添$a元素数加1;

$arr = [
'a' => 'b',
'c' => [
    'd',
],
];
echo count($arr, 1);//3('b',['d'],'d')

只需二维数组有规律,则能够很轻易的统计二维的元素个数

$arr = [
'a' => [
    'd',
    'e',
],
'c' => [
    'd',
    'g',
],
];
echo count($arr, 1) - count($arr);//4

运用array_map也能够

$arrCount = 0;
$countFun = function($a) use(&$arrCount) {
$arrCount += count($a);
return $arrCount;
};
array_map($countFun,$arr);
echo $arrCount;

记着$arrCount肯定要援用传值
假如要统计三维数组的元素个数

$arr = [
'a' => [
   'b' => [
       'd',
       'e',
       'g',
   ],
],
'c' => [
    'd' => [
        'd',
        'g',
    ],
],
];
$arrCount = 0;
$countFun = function($a) use(&$arrCount) {
$arrCount += count($a, 1) - count($a);
return $arrCount;
};
array_map($countFun,$arr);
echo $arrCount;

假如要统计四维数组的元素个数

$arr = [
'a' => [
   'b' => [
       'd' => [
           'e',
           'g',
       ],
   ],
],
'c' => [
    'd' => [
        'd' => [
            'e',
            'g',
            'f'
        ],
    ],
],
];
$arrCount = 0;
$napFun = function($a) use(&$arrCount) {
$countFun = function($a) use(&$arrCount) {
    $arrCount += count($a, 1) - count($a);
    return $arrCount;
};
array_map($countFun,$a);
return $arrCount;
};
array_map($napFun,$arr);
echo $arrCount;

假如是统计3维或更高维度的发起运用递归的要领

$arr = [
'a' => [
    'b' => [
       'd' => [
           'e',
           'g',
       ],
    ],
],
'c' => [
    'd' => [
        'd' => [
            'e',
            'g',
            'f'
        ],
    ],
],
];
function arrCount($arr, &$arrCount, $level){
if(0 === $level){
    $arrCount += count($arr);
    print_r($arr);
}else{
    $level--;
    foreach($arr as $a){
        arrCount($a, $arrCount, $level);
    }
}
}
$count = 0;
$level = 3;
arrCount($arr,$count,$level);
echo $count;

本篇文章到这里就已悉数完毕了,更多其他精彩内容能够关注ki4网的JavaScript视频教程栏目!

以上就是php统计多维数组元素个数的要领引见(附代码)的细致内容,更多请关注ki4网别的相干文章!

标签:php