Itérables

Un Iterable est un alias de type intégré au moment de la compilation pour array|Traversable. Depuis son introduction dans PHP 7.1.0 et avant PHP 8.2.0, un iterable était un pseudo-type intégré qui agissait comme l'alias de type susmentionné et peut être utilisé comme une déclaration de type. iterable peut être utilisé dans une boucle foreach et avec yield from dans un générateur.

Les paramètres déclarés comme itérables peuvent utiliser null ou un tableau comme valeur par défaut.

Note:

Exemple #1 Exemple de valeur par défaut d'un argument itérable

<?php

function foo(iterable $iterable = []) {
// ...
}

?>

Les itérables peuvent aussi être utilisés comme déclaration du type de retour pour indiquer qu'une fonction renverra une valeur itérable. Si la valeur renvoyée n'est pas un tableau ou une instance de Traversable, une exception TypeError sera lancée.

Exemple #2 Exemple de type de retour itérable.

<?php

function bar(): iterable {
return [
1, 2, 3];
}

?>

Les fonctions déclarant un type de retour itérable peuvent aussi être des générateurs.

Exemple #3 Exemple de type de retour itérable d'un générateur

<?php

function gen(): iterable {
yield
1;
yield
2;
yield
3;
}

?>