3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { static function a() { printf("in method: %s\nself: %s\nstatic: %s\n", __METHOD__, self::class, static::class); } } class B extends A { } $c = Closure::fromCallable('A::a'); print "getClosureScopeClass A::a:\n"; var_dump((new ReflectionFunction($c))->getClosureScopeClass()->getName()); $c(); print "\n"; $c = Closure::fromCallable('B::a'); print "getClosureScopeClass B::a:\n"; var_dump((new ReflectionFunction($c))->getClosureScopeClass()->getName()); $c();

preferences:
30.31 ms | 405 KiB | 5 Q