iterator_count

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

iterator_count Compte le nombre d'éléments dans un itérateur

Description

function iterator_count(Traversable|array $iterator): int

Compte les éléments dans un itérateur. Il n'est pas garanti que la fonction iterator_count() conserve la position courante de l'itérateur iterator.

Liste de paramètres

iterator

L'itérateur dont il faut compter les éléments.

Valeurs de retour

Le nombre d'éléments dans l'itérateur iterator.

Historique

Version Description
8.2.0 Le type de iterator a été élargi de Traversable à Traversable|array.

Exemples

Exemple #1 Exemple avec iterator_count()

<?php
$iterator
= new ArrayIterator(array('recipe'=>'crêpes', 'oeufs', 'lait', 'farine'));
var_dump(iterator_count($iterator));
?>

L'exemple ci-dessus va afficher :

int(4)

Exemple #2 Exemple avec iterator_count() qui modifie la position

<?php
$iterator
= new ArrayIterator(['one', 'two', 'three']);
var_dump($iterator->current());
var_dump(iterator_count($iterator));
var_dump($iterator->current());
?>

L'exemple ci-dessus va afficher :

string(3) "one"
int(3)
NULL

Exemple #3 Exemple avec iterator_count() dans une boucle foreach

<?php
$iterator
= new ArrayIterator(['one', 'two', 'three']);
foreach (
$iterator as $key => $value) {
echo
"$key: $value (", iterator_count($iterator), ")\n";
}
?>

L'exemple ci-dessus va afficher :

0: one (3)