- range: documentation ( source)
<?php
function generate_ints($n){
$range = range(0,$n-1);
for ($i=0, $max = count($range); $i < $max; $i++) {
$i = (yield $i);
return $i;
}
}
$gen = generate_ints(3);
echo $gen->current();
$gen->next();
$gen->send(99); // injecting a value;
echo $gen->current();
$gen->next();
echo $gen->current();