3v4l.org

run code in 300+ PHP versions simultaneously
<?php spl_autoload_register('loader'); function loader($className) { echo "loading $className\n"; if ($className == 'Wakeup') eval("class Wakeup {public $b; public $e; }"); else if ($className == 'B') eval("class B { function __wakeup(){echo 'B::__wakeup';}}"); else if ($className == 'D') eval("class D { function __wakeup(){echo 'D::__wakeup';}}"); else if ($className == 'E') eval("class E extends D { function __wakeup(){echo 'E::__wakeup';}}"); echo "loaded $className: " . class_exists($className, false) . "\n"; return true; } unserialize('O:6:"Wakeup":2:{s:1:"b";O:1:"B":0:{}s:1:"e";O:1:"E":0:{}}');
Output for git.master, git.master_jit, rfc.property-hooks
loading Wakeup Warning: Undefined variable $b in /in/7AkWZ on line 10 Warning: Undefined variable $e in /in/7AkWZ on line 10 Parse error: syntax error, unexpected token ";", expecting variable in /in/7AkWZ(10) : eval()'d code on line 1
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:
36.41 ms | 401 KiB | 8 Q