3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A{ public function __construct($b) { if($b) return new B(); } public function doSomething() { echo 'A class."\n"'; } } class B{ public function __construct() { echo 'buidling B'."\n"; } public function doSomething() { echo 'B class."\n"'; } } $c = new A(true); var_dump($c); $c->doSomething(); $d = $c->__construct(true); var_dump($d); $f = ($e = new A(true))(); var_dump($f);

preferences:
54.09 ms | 402 KiB | 5 Q