3v4l.org

run code in 300+ PHP versions simultaneously
<?php function gen_one_to_three() { for ($i = 1; $i <= 10; $i++) { $a = (yield $i); var_dump('a', $a); } } $generator = gen_one_to_three(); foreach ($generator as $value) { $generator->send('cheese'); var_dump($value); }
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.12 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
string(1) "a" string(6) "cheese" int(1) string(1) "a" NULL string(1) "a" string(6) "cheese" int(3) string(1) "a" NULL string(1) "a" string(6) "cheese" int(5) string(1) "a" NULL string(1) "a" string(6) "cheese" int(7) string(1) "a" NULL string(1) "a" string(6) "cheese" int(9) string(1) "a" NULL
Output for 5.4.0 - 5.4.45
Parse error: syntax error, unexpected '$i' (T_VARIABLE) in /in/WAN5A on line 6
Process exited with code 255.
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29
Parse error: syntax error, unexpected T_VARIABLE in /in/WAN5A on line 6
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_VARIABLE in /in/WAN5A on line 6
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/WAN5A on line 6
Process exited with code 255.

preferences:
257.36 ms | 401 KiB | 355 Q