数组函数

PHP count() 函数

主题:PHP 数组参考上一页|下一页

说明

count() 函数对数组中的所有元素或对象中的某些元素进行计数。

下表总结了该函数的技术细节。

返回值: 返回数组中的元素个数。
变更日志: 自 PHP 7.2.0 起,此函数会针对无效的可数类型产生警告。
版本: PHP 4+

语法

count() 函数的基本语法如下:

count(array, mode);

下面的例子展示了 count() 函数的作用。

<?php
// 样本数组
$cars = array("Audi", "BMW", "Volvo", "Toyota");
    
// 显示数组元素个数
echo count($cars);
?>

参数

count() 函数接受两个参数。

参数 说明
array 必填。 指定一个数组或可数对象。
mode 可选。 如果设置为 COUNT_RECURSIVE(或 1),count() 将递归地对数组进行计数。 这对于计算多维数组的所有元素特别有用。
 

注意: count() 函数可能会为未设置的变量返回 0,或者已使用空数组初始化。 使用 isset() 函数来测试是否设置了变量。


更多示例

下面是更多示例,展示了 count() 函数的基本工作原理:

下面的示例演示如何使用 count() 函数对多维数组中的所有元素进行递归计数。 让我们尝试一下,看看它是如何工作的:

<?php
// 样本数组
$cars = array(
    "Audi" => array("RS7", "A8"), 
    "BMW" => array("Z4", "X7", "M8"), 
    "Mercedes" => array("GLA", "GLS"),
    "Volvo" => array("XC90")
);

// 获取正常计数
echo sizeof($cars); // Prints: 4   

// 获取递归计数
echo sizeof($cars, 1); // Prints: 12
?>

如果您想使用 count($object) 并获得预期的结果,您的类必须实现 Countable 接口,如下例所示:

<?php
class MyClass implements Countable
{
    protected $number = 4;

    public function count(){
        return $this->number;
    }

}

// 创建对象
$countable = new MyClass();
echo count($countable); // Prints: 4
?>
Advertisements