3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { static function bar() { $foo = static function() use (self) { return get_parent_class(); }; $foo->bindTo(null,'Bar'); print get_class($foo); return $foo(); } } class Bar extends Foo { } print Foo::bar(); print Bar::bar(); //assert(Bar::bar() === 'Bar'); //assert(Bar::baz() === 'Bar');
Output for 5.4.0 - 5.4.28
Parse error: syntax error, unexpected 'self' (T_STRING), expecting '&' or variable (T_VARIABLE) in /in/Qq1fE on line 5
Process exited with code 255.
Output for 5.3.0 - 5.3.28
Parse error: syntax error, unexpected T_FUNCTION, expecting T_PAAMAYIM_NEKUDOTAYIM in /in/Qq1fE on line 5
Process exited with code 255.

preferences:
176.17 ms | 1395 KiB | 65 Q