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();
Output for git.master, git.master_jit, rfc.property-hooks
getClosureScopeClass A::a: string(1) "A" in method: A::a self: A static: A getClosureScopeClass B::a: string(1) "A" in method: A::a self: A static: B

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
126.83 ms | 405 KiB | 5 Q