PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

PHP数组学习之二维数组计算数组长度

青灯夜游
青灯夜游 原创
2021-07-30 11:54:17 3953浏览

在之前的文章《php数组学习之二维数组创建方法浅析》中,我们介绍了如何创建二维数组(多维数组),感兴趣的可以去看看。既然有了数组,那就要操作,有时就需要知道数组长度(数组中所有元素的个数)。那么如何获取二维数组甚至多维数组的数组长度呢?今天我们就来和大家一起了解下。

一维数组的数组长度我们知道怎么获取,很简单,直接使用count($arr)就可以了。

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
//输出语句
var_dump($arr);
echo "数组长度为:".count($arr);
?>

输出结果:

1.png

是不是很简单,那么二维数组呢?二维数组甚至多维数组如何计算数组长度,统计所以元素的个数?

二维数组也简单,还是使用count()函数,只需要给count()函数传递二个参数:第一个参数和上面一样为$array,指定要计数的数组;而第二个参数为$mode,值设置为 COUNT_RECURSIVE 或者 1,这样count()函数就会递归地计算出数组中元素个数。

下面我们通过两个代码实例来具体了解下,利用count()函数如何通过多维数组的数组长度。

实例1:二维数组的长度

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array
("张三",
25,
    array("高数","PHP教程","英语"),
);
//输出语句
echo "数组长度为:".count($arr,1);
?>

输出:

数组长度为:6

看了上面的输出结果,是不是感到疑惑,数组中不是只有5个元素("张三"25"高数""PHP教程""英语")吗,为什么结果显示的数组长度不是5,而是6呢?

其实是因为,此时count()函数循环统计二维数组中的所有元素,“array("高数","PHP教程","英语")”会被当做一个整体统计一次,它里面的元素("高数""PHP教程""英语")又会被统计一次,所以最终结果为 6。

我们通过var_dump()函数输出$arr数组,看看它的数据结构,可以直观的了解count()函数的流程。

2.png

实例2:三维数组的长度

<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(
        &#39;安徽&#39; => array(
            &#39;合肥&#39;=>array(&#39;蜀山区&#39;,&#39;长丰县&#39;,&#39;肥东&#39;),
			&#39;宿州&#39;=>array(&#39;墉桥区&#39;,&#39;灵璧县&#39;,&#39;泗县&#39;)
        ),
        &#39;河南&#39; => array(
            &#39;洛阳&#39;=>array(&#39;西工区&#39;,&#39;老城区&#39;,&#39;孟津县&#39;),
            &#39;郑州市&#39;=>array(&#39;中原区&#39;,&#39;金水区&#39;)
        )
);
 var_dump($arr);
 echo "数组长度为:".count($arr,1);
?>

输出结果:

3.png

扩展知识:

计算数组长度除了可以使用count()函数外,我们还能使用sizeof()函数。sizeof()函数是count()函数的别名,其功能和使用方法与 count()函数完全一样的。

好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

最后给大家推荐一个PHP数组的免费视频教程:PHP函数之array数组函数视频讲解,快来学习吧!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。