php sizeof与count的区别是什么

青灯夜游
青灯夜游 原创
2023-03-12 20:58:02 1758浏览

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教程','//m.sbmmt.com/','count()函数','sizeof()函数','数组长度'];
echo '$arr 的长度为:'.count($arr).'<br>';
$arr2 = ['C语言中文网','PHP教程',['//m.sbmmt.com/','count()函数','sizeof()函数','数组长度']];
echo '$arr2 的长度为:'.count($arr2).'<br>';
echo '参数 $mode = 1 时,$arr2 的长度为:'.count($arr2, 1).'<br>';
$str = '//m.sbmmt.com/';
echo '$str 的长度为:'.count($str).'<br>';
?>

输出结果:

1.png

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

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

输出结果:

2.png

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

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

推荐学习:《PHP视频教程

以上就是php sizeof与count的区别是什么的详细内容,更多请关注php中文网其它相关文章!

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