PHP Réécriture de randomNumbers () à l'aide d'un générateur


Exemple

Notre fonction randomNumbers() peut être randomNumbers() pour utiliser un générateur.

<?php

function randomNumbers(int $length)
{
    for ($i = 0; $i < $length; $i++) {
        // yield tells the PHP interpreter that this value
        // should be the one used in the current iteration.
        yield mt_rand(1, 10);
    }
}

foreach (randomNumbers(10) as $number) {
    echo "$number\n";
}

En utilisant un générateur, nous n'avons pas besoin de construire une liste complète de nombres aléatoires pour revenir de la fonction, ce qui réduit considérablement la quantité de mémoire utilisée.