本节内容:
php数组长度的获取方法。
在php编程中,取得php数组长度的方法有很多,php提供了两个函数可以计算一维数组长度,如count、sizeof都可以直接统计数组长度。
有时,也需要获取二维数组的长度。
来看几个实例。
php如何获取数组的长度,使用php函数count(),或sizeof()。
例如:
复制代码 代码示例:
<?php
$arr = Array('0','1','2','3','4');
echo count($arr);
// 输出 5
// www.jb200.com
$arr = array('A','B','C');
echo sizeof($arr);
//输出3
sizeof()和count()殊途同归,这两个函数都可以返回数组元素个数。
可以得到一个常规标量变量中的元素个数,如果传递给这个函数的数组是一个空数组,或一个没有经过设定的变量,返回的数组元素个数就是0;
两函数功能一样,php手册上讲,sizeof()是函数count()的别名。
统计多维数组长度
例子,读取的数组是一个二维数组:
复制代码 代码示例:
<?php
$arr=array(
0=>array('title' => '新闻1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'),
1=>array('title' => '新闻2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
?>
假若想统计数组$arr的长度,即该二维数组只有两条新闻,想要的数字也是2,但是如果使用count($arr)不同版本的php,统计的结果是不一样的;
后来在php手册中发现,count函数还有第二个参数,解释如下:
count函数有两个参数:
0(或COUNT_NORMAL)为默认,不检测多维数组(数组中的数组);
1(或COUNT_RECURSIVE)为检测多维数组,
因此,判断读取的数组$arr是不是有新闻信息,可以这样:
<?php
if(is_array($arr) && count($arr,COUNT_NORMAL)>0 )
{
.....
} else {
.....
}
?>
测试该函数:
复制代码 代码示例:
<?php
$arr=array(
0=>array('title' => '新闻1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'),
1=>array('title' => '新闻2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
echo '不统计多维数组:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo "<br/>";
echo '统计多维数组:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>