International PHP Conference Berlin 2025

Countable::count

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

Countable::countCount elements of an object

Descripción

public Countable::count(): int

This method is executed when the value for count() is an object implementing Countable.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

The custom count as an int.

Ejemplos

Ejemplo #1 Countable::count() example

<?php

class Counter implements Countable
{
private
$count = 0;

public function
count(): int
{
return ++
$this->count;
}
}

$counter = new Counter;

for (
$i = 0; $i < 10; ++$i) {
echo
"I have been count()ed " . count($counter) . " times\n";
}

?>

El resultado del ejemplo sería algo similar a:

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
add a note

User Contributed Notes 1 note

up
13
SenseException
10 years ago
Even though Countable::count method is called when the object implementing Countable is used in count() function, the second parameter of count, $mode, has no influence to your class method.

$mode is not passed to Countable::count:

<?php

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

count(new Foo(), COUNT_RECURSIVE);

?>

var_dump output:

array(0) {
}
To Top