PHP 日本大会 2024

Countable::count

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

Countable::count计算对象的元素个数

描述

public Countable::count(): int

当在实现 Countable 接口的对象上使用 count() 函数时,将执行此方法。

参数

此函数没有参数。

返回值

自定义计数,作为 int

注意:

返回值将强制转换为 int

示例

示例 #1 Countable::count() 示例

<?php
class myCounter implements Countable {
private
$count = 0;
public function
count() {
return ++
$this->count;
}
}

$counter = new myCounter;

for(
$i=0; $i<10; ++$i) {
echo
"我已被 count() 调用了 " . count($counter) . " 次\n";
}
?>

以上示例将输出类似以下内容

I have been count()ed 1 times
I have been count()ed 2 times
I have been count()ed 3 times
I have been count()ed 4 times
I have been count()ed 5 times
I have been count()ed 6 times
I have been count()ed 7 times
I have been count()ed 8 times
I have been count()ed 9 times
I have been count()ed 10 times

添加注释

用户贡献的注释 1 条注释

SenseException
10 年前
即使在 count() 函数中使用实现 Countable 接口的对象时会调用 Countable::count 方法,count 的第二个参数 $mode 也不会影响您的类方法。

$mode 不会传递给 Countable::count

<?php

class Foo implements Countable
{
public function
count()
{
var_dump(func_get_args());
return
1;
}
}

count(new Foo(), COUNT_RECURSIVE);

?>

var_dump 输出

array(0) {
}
To Top