3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { const A = __CLASS__; public function someMethod() { return "Foo::someMethod ".self::A; } } class Bar { const A = __CLASS__; public function someMethod() { return "Bar::someMethod ".self::A; } } $foo = new Foo(); $bar = new Bar(); $reflClass = new ReflectionClass('Foo'); $reflMethod = $reflClass->getMethod('someMethod'); $fooClosure = $reflMethod->getClosure($foo); $barClosure = $fooClosure->bindTo($bar); echo $fooClosure()."\n"; echo $barClosure()."\n";
Output for git.master, git.master_jit, rfc.property-hooks
Warning: Cannot bind method Foo::someMethod() to object of class Bar in /in/Cqj4f on line 25 Foo::someMethod Foo Fatal error: Uncaught Error: Value of type null is not callable in /in/Cqj4f:28 Stack trace: #0 {main} thrown in /in/Cqj4f on line 28
Process exited with code 255.

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:
51.46 ms | 401 KiB | 8 Q