Le générateur yield en PHP

En PHP (comme dans bien d'autres langages), le générateur yield retourne une série de valeurs pouvant être parcourue avec un boucle foreach notamment.

Le script suivant affichera par exemple "01" :

function monGenerateur()
{
    for ($i = 0; $i < 2; $i++)
        yield $i;
}

foreach (monGenerateur() as $valeur)
    echo $i;

À noter :

  • Le générateur n'a pas besoin de return. Un return vide arrêterait juste le générateur.
  • Le résultat d'un générateur n'est pas un tableau. Il n'est pas possible par exemple de récupérer directement la deuxième valeur, il doit être parcouru depuis le début.
Catégories: 

À propos de l'auteur

Portrait de Rémi Leclerc
Rémi Leclerc
Architecte logiciel diplômé et passionné d'informatique depuis l'enfance, je travaille actuellement à Chantilly comme responsable de projet et concepteur développeur.

Ajouter un commentaire

CAPTCHA
Cette question permettra de savoir si vous êtes un humain ou un robot indésirable.
1 + 0 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.