3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { public function display() { $cb = self::fooStaticMethod(); call_user_func($cb, $this); } public static function fooStaticMethod() { return function (Foo $foo) { $foo->fooMethod(); }; } private function fooMethod() { var_dump('foo'); } } class Bar extends Foo { } $foo = new Foo(); $foo->display(); $bar = new Bar(); $bar->display();

preferences:
56.79 ms | 402 KiB | 5 Q