3v4l.org

run code in 300+ PHP versions simultaneously
<?php function nums() { for ($i = 0; $i < 5; ++$i) { //get a value from the caller $cmd = (yield $i); var_dump($cmd); if($cmd == 'stop') { return;//exit the function } } } $gen = nums(); foreach($gen as $v) { if($v == 3) { $send = $gen->send('stop'); } //if (isset($send)) var_dump($send); echo "{$v}\n"; }

preferences:
30.12 ms | 402 KiB | 5 Q