PHP如何计算数组中元素的个数?

在PHP中可以使用内置函数sizeof()和count()来计算数组中元素的个数,下面本篇文章就来带大家了解一下这两种函数,介绍计算数组中元素个数的方法,希望对大家有所帮助。【视频教程推荐:PHP教程】

方法一:PHP使用sizeof()函数来计算数组元素的个数

sizeof()函数是PHP中的内置函数,用于计算数组或任何其他可数对象中存在的元素数。

基本语法:

int sizeof(array,mode);

参数:sizeof()接受两个参数

array:此参数表示包含我们需要计数的元素的数组。

mode:这是一个可选参数,用于指定函数的模式。它可以采用两个不同的值,如下所示:

 ● 0:默认值,不计算多维数组的所有元素

 ● 1:表示递归计算数组(计算多维数组的所有元素)

返回值:sizeof()函数返回一个整数值,表示数组中存在的元素数。

下面通过示例来看看izeof()函数是如何计算数组元素的个数的。

示例1:计算一维数组中元素的数量:

<?php 
   header("content-type:text/html;charset=utf-8");
   $a=array(1,2,3,4,5,6); 
  
   // 使用sizeof()计算数组中元素的个数
   $result = sizeof($a); 
  
   echo "数组中元素的个数为:".$result; 
?>

输出:

数组中元素的个数为:6

示例2:计算多维数组中的元素数量:

<?php 
header("content-type:text/html;charset=utf-8");
$array = array('name' => array('php', 'hello', 'world'), 
              'article' => array('sizeof', 'function', 'PHP')); 
  
// 递归计数
echo sizeof($array, 1)."<br>"; // 输出 8 
  
// 正常计数
echo sizeof($array); // 输出 2 
  
?>

输出:

8
2

方法二:PHP使用count()函数来计算数组元素的个数

count()函数用于计算数组中的当前元素。对于已设置为空数组的变量,该函数可能返回0;对于未设置的变量,该函数返回0。

基本语法:

count(array,mode)

参数:count()函数通常采用一个参数,该参数表示需要计算元素的数组。但另外,该函数还可以采用参数模式,告诉函数以正常或递归模式对元素进行计数。

array(强制):表示需要对其元素进行计数的数组。

mode(可选):用于设置功能的模式。该参数可以采用两个可能的值:

 ● 0(或False):默认值,表示不计算多维数组的所有元素

 ● 1:通常表示递归地计算数组的值;这有助于计算多维数组。

返回值:count()函数返回数组中的元素数。

示例1:计算一维数组中元素的数量:

<?php 
   header("content-type:text/html;charset=utf-8");
   $a=array(1,2,3,4,5,6); 
  
   // 使用sizeof()计算数组中元素的个数
   $result = count($a); 
  
   echo "数组中元素的个数为:".$result; 
?>

输出:

数组中元素的个数为:6

示例2:计算多维数组中的元素数量:

<?php 
header("content-type:text/html;charset=utf-8");
$array = array('name' => array('php', 'hello', 'world'), 
              'article' => array('count', 'function', 'PHP')); 
  
// 递归计数
echo count($array, 1)."<br>"; // 输出 8 
  
// 正常计数
echo count($array); // 输出 2 
  
?>

输出:

8
2

说明:

在计算多维数组中元素的个数时,如果直接使用sizeof()或count()函数(mode参数的值为0时),只会统计一维数组的个数,二维的会被忽略。需要将mode参数的值设置为1才行。

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注求知技术网相关教程栏目!!!

以上就是PHP如何计算数组中元素的个数?的详细内容,更多请关注求知技术网其它相关文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注