3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { static function bar() { $foo = static function() { return get_called_class(); }; return $foo(); } static function baz() { $foo = function() { return get_called_class(); }; return $foo(); } static function rebind() { $foo = function() { return get_called_class(); }; $oFoo=new Foo; return $foo->bindTo($oFoo); } } class Bar extends Foo { } //print Bar::bar() . Bar::baz() . print Bar::rebind(); assert(Bar::bar() === 'Bar'); assert(Bar::baz() === 'Bar');

preferences:
36 ms | 402 KiB | 5 Q