3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function foo() { echo 'In generator foo',"\n"; for ($i = 11; $i < 14; $i++) { $string=(yield $i); if (isset($string)) { echo "Sent value is $string","\n"; } } echo 'generator done and closed.',"\n"; return; } $generator = foo(); foreach ($generator as $value) { echo "Back in generator object ...\n"; echo "Fetched value is $value\n"; if ($value == 13) { $generator->send('Hello World'); } }
Output for 5.5.0 - 5.6.28, 7.0.0 - 7.1.0
In generator foo Back in generator object ... Fetched value is 11 Back in generator object ... Fetched value is 12 Back in generator object ... Fetched value is 13 Sent value is Hello World generator done and closed.
Output for hhvm-3.10.0 - 3.12.0
In generator foo Back in generator object ... Fetched value is 11 Back in generator object ... Fetched value is 12 Back in generator object ... Fetched value is 13 Sent value is Hello World generator done and closed. Fatal error: Uncaught exception 'Exception' with message 'Generator is already finished' in /in/YRAJ3:23 Stack trace: #0 /in/YRAJ3(23): Generator->next() #1 {main}
Process exited with code 255.
Output for 5.4.0 - 5.4.45
Parse error: syntax error, unexpected '$i' (T_VARIABLE) in /in/YRAJ3 on line 6
Process exited with code 255.
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.3.29
Parse error: syntax error, unexpected T_VARIABLE in /in/YRAJ3 on line 6
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_VARIABLE in /in/YRAJ3 on line 6
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/YRAJ3 on line 6
Process exited with code 255.