3v4l.org

run code in 300+ PHP versions simultaneously
<?php $success=false; if (true){ set_error_handler(function($a, $b, $c, $d) { var_dump('error_handler', $a, $b, $c, $d); }); register_shutdown_function(function(){ if ($success){return;} var_dump(get_last_error()); }); } $var = 1; try { $var->method(); // Throws an Error object in PHP 7. } catch (Error $e) { // Handle error var_dump('error', $e); } catch (Exception $e) { // Handle error var_dump('exception', $e); } $success=true; ?>
Output for git.master, git.master_jit, rfc.property-hooks
string(5) "error" object(Error)#3 (7) { ["message":protected]=> string(41) "Call to a member function method() on int" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/Uh2AD" ["line":protected]=> int(17) ["trace":"Error":private]=> array(0) { } ["previous":"Error":private]=> NULL } string(13) "error_handler" int(2) string(27) "Undefined variable $success" string(9) "/in/Uh2AD" int(8) Fatal error: Uncaught Error: Call to undefined function get_last_error() in /in/Uh2AD:10 Stack trace: #0 [internal function]: {closure}() #1 {main} thrown in /in/Uh2AD on line 10
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:
58.44 ms | 402 KiB | 8 Q