3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace derp { class Foo {} } namespace herp { class BetterFoo extends \derp\Foo {} class Derp { public function __construct(DerpFoo $foo) {} } class_alias('\derp\Foo', 'DerpFoo'); $f = new Derp(new BetterFoo); }
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught TypeError: herp\Derp::__construct(): Argument #1 ($foo) must be of type herp\DerpFoo, herp\BetterFoo given, called in /in/Vg2Y9 on line 20 and defined in /in/Vg2Y9:14 Stack trace: #0 /in/Vg2Y9(20): herp\Derp->__construct(Object(herp\BetterFoo)) #1 {main} thrown in /in/Vg2Y9 on line 14
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:
42.81 ms | 401 KiB | 8 Q