3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace clases; abstract class MyParent{ abstract function name(); } class Foo extends MyParent{ function name(){ return "Foo class"; } } class Bar extends MyParent{ function name(){ return "Bar class"; } } function doSomething(\clases\MyParent $object){ echo 'Good';} $object = new Foo(); doSomething($object); $object2 = new \stdClass(); doSomething($object2);
Output for git.master, git.master_jit, rfc.property-hooks
Good Fatal error: Uncaught TypeError: clases\doSomething(): Argument #1 ($object) must be of type clases\MyParent, stdClass given, called in /in/tqV3s on line 17 and defined in /in/tqV3s:9 Stack trace: #0 /in/tqV3s(17): clases\doSomething(Object(stdClass)) #1 {main} thrown in /in/tqV3s on line 9
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:
52.22 ms | 401 KiB | 8 Q