php sizeof与count的区别是什么

php sizeof()和count()之间没有区别。sizeof()函数是count()函数的别名,也就是说sizeof()函数的功能及使用方法与count()函数是完全相同的,都可以用来计算数组的长度。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

在 PHP 中获取数组长度方法很简单,PHP 为我们提供了两个函数来计算数组的长度,分别是 count() 和 sizeof() 函数。

但其实count() 和 sizeof() 函数之间是没有区别的,sizeof() 函数是 count() 函数的别名,这两个函数的功能及使用方法是完全相同的。

语法格式:

count($array,$mode);
sizeof($array,$mode);

参数说明如下:

  • $array:为待统计的数组或对象;
  • $mode:为可选参数,可以省略。
    • 如果省略 $mode 参数,或者将其设置为 COUNT_NORMAL 或者 0,count() 函数将不检测多维数组;
    • 如果 $mode 设置为 COUNT_RECURSIVE 或者 1,count() 函数将递归计算数组中元素的个数,对于计算多维数组的元素个数尤为有用。

提示:如果 $array 既不是数组,也不是对象,则返回 1;如果 $array 等于 NULL,则返回 0。

示例1:使用count() 统计数组元素的个数。

<?php
header("Content-type:text/html;charset=utf-8");
$arr = ['PHP中文网','PHP教程','https://www.yht7.com/','count()函数','sizeof()函数','数组长度'];
echo '$arr 的长度为:'.count($arr).'<br>';
$arr2 = ['C语言中文网','PHP教程',['https://www.yht7.com/','count()函数','sizeof()函数','数组长度']];
echo '$arr2 的长度为:'.count($arr2).'<br>';
echo '参数 $mode = 1 时,$arr2 的长度为:'.count($arr2, 1).'<br>';
$str = 'https://www.yht7.com/';
echo '$str 的长度为:'.count($str).'<br>';
?>

输出结果:

1.png

示例2:使用sizeof() 统计数组元素的个数

<?php
header("Content-type:text/html;charset=utf-8");
$arr = ['PHP中文网','PHP教程','https://www.yht7.com/','count()函数','sizeof()函数','数组长度'];
echo '$arr 的长度为:'.sizeof($arr).'<br>';
$arr2 = ['C语言中文网','PHP教程',['https://www.yht7.com/','count()函数','sizeof()函数','数组长度']];
echo '$arr2 的长度为:'.sizeof($arr2).'<br>';
echo '参数 $mode = 1 时,$arr2 的长度为:'.count($arr2, 1).'<br>';
$str = 'https://www.yht7.com/';
echo '$str 的长度为:'.sizeof($str).'<br>';
?>

输出结果:

2.png

可以看出使用count()和sizeof() 返回的结果是一样的。

说明:代码第 7 行把 $mode 设置为 1,count()和sizeof() 函数会循环统计二维数组中的所有元素,此时 ['https://www.yht7.com/','count()函数','sizeof()函数','数组长度'] 会被当做一个整体统计一次,它里面的元素又会被统计一次,所以最终结果为 7。

推荐学习:《PHP视频教程》

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php sizeof与count的区别是什么