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

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

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

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

基本语法:

int sizeof(array,mode);

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

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

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

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

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

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

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

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

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

输出:

数组中元素的个数为:6

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

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

输出:

8

2

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

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

基本语法:

count(array,mode)

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

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

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

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

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

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

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

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

输出:

数组中元素的个数为:6

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

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

输出:

8

2

说明:

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