3v4l.org

run code in 300+ PHP versions simultaneously
<?php function printer() { echo "I'm printer!".PHP_EOL; while (true) { $string = yield 'yielded'; echo $string.PHP_EOL; } } $printer = printer(); //$printer->next(); var_dump($printer->current()); //$printer->send('Hello world!'); //$printer->send('Bye world!'); ?>
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
I'm printer! string(7) "yielded"

preferences:
185.49 ms | 403 KiB | 207 Q