3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php function gen1() { yield 1; echo "Sup from gen1\n"; yield 2; yield 3; } function gen2() { try { yield from gen1(); } catch (Exception $e) { echo "Sup from gen2!\n"; yield 10; } } function gen3() { yield from gen2(); } $g = gen3(); // Prime the generator var_dump($g->current()); $g->next(); $g->throw(new Exception("Whoa there lassie")); var_dump($g->current());
based on I1JMC
Output for 7.0.0 - 7.2.0
int(1) Sup from gen1 Sup from gen2! int(10)
Output for 5.5.24 - 5.6.28
Parse error: syntax error, unexpected 'gen1' (T_STRING) in /in/CkJ3t on line 12
Process exited with code 255.
Output for 5.4.9 - 5.4.45
Parse error: syntax error, unexpected '1' (T_LNUMBER) in /in/CkJ3t on line 4
Process exited with code 255.
Output for 5.3.19 - 5.3.29
Parse error: syntax error, unexpected T_LNUMBER in /in/CkJ3t on line 4
Process exited with code 255.