首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

count

(PHP 4, PHP 5, PHP 7)

count - 统计数组中的所有元素或对象中的某个元素

描述

代码语言:javascript
复制
int count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] )

计算数组中的所有元素或对象中的某个元素。

对于对象,如果您安装了SPL,则可以通过实现接口Countable 将其挂接到count()。该接口只有一个方法Countable :: count(),它返回count()函数的返回值。

有关如何在PHP中实现和使用数组的详细说明,请参阅手册的Array部分。

参数

array_or_countable

一个数组或可数对象。

mode

如果可选mode参数设置为COUNT_RECURSIVE(或1),则count()将递归计数数组。这对计算多维数组的所有元素特别有用。

警告

count()可以检测递归以避免无限循环,但E_WARNING每次都会发出一次(如果数组本身包含多次)并返回高于预期值的计数。

返回值

返回中的元素数量array_or_countable。当参数既不是数组也不是具有可数接口的对象时,将返回1。有一个例外,如果array_or_countableNULL,将返回0

警告

对于未设置的变量,count()可能会返回0,但对于已使用空数组进行初始化的变量,count也可以返回0。使用isset()来测试是否设置了变量。

例子

示例#1 count()示例

代码语言:javascript
复制
<?php
$a[0] = 1;
$a[1] = 3;
$a[2] = 5;
$result = count($a);
// $result == 3

$b[0]  = 7;
$b[5]  = 9;
$b[10] = 11;
$result = count($b);
// $result == 3

$result = count(null);
// $result == 0

$result = count(false);
// $result == 1
?>

示例#2递归计数()示例

代码语言:javascript
复制
<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
              'veggie' => array('carrot', 'collard', 'pea'));

// recursive count
echo count($food, COUNT_RECURSIVE); // output 8

// normal count
echo count($food); // output 2

?>

扫码关注腾讯云开发者

领取腾讯云代金券