3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $success=false; if (true) { set_error_handler(function($a, $b, $c, $d) { var_dump('error_handler', $a, $b, $c, $d); throw new ErrorException($a, $b, $c, $d); }); register_shutdown_function(function(){ if ($GLOBALS['success']){return;} var_dump('shutdown_function', error_get_last()); }); } $var = 1; try { // $var->method(); // Throws an Error object in PHP 7. $buf.='nyanpasu'; /* } catch (Error $e) { // Handle error var_dump('error', $e); */ } catch (Exception $e) { // Handle error var_dump('exception', $e); } $success=true; ?>
based on BqK9U
Output for 7.0.0 - 7.2.0
string(13) "error_handler" int(8) string(23) "Undefined variable: buf" string(9) "/in/OtM0R" int(19) Fatal error: Uncaught Error: Wrong parameters for ErrorException([string $message [, long $code, [ long $severity, [ string $filename, [ long $lineno [, Throwable $previous = NULL]]]]]]) in /in/OtM0R:6 Stack trace: #0 /in/OtM0R(6): ErrorException->__construct('8', 'Undefined varia...', '/in/OtM0R', 19) #1 /in/OtM0R(19): {closure}(8, 'Undefined varia...', '/in/OtM0R', 19, Array) #2 {main} thrown in /in/OtM0R on line 6 string(17) "shutdown_function" array(4) { ["type"]=> int(1) ["message"]=> string(387) "Uncaught Error: Wrong parameters for ErrorException([string $message [, long $code, [ long $severity, [ string $filename, [ long $lineno [, Throwable $previous = NULL]]]]]]) in /in/OtM0R:6 Stack trace: #0 /in/OtM0R(6): ErrorException->__construct('8', 'Undefined varia...', '/in/OtM0R', 19) #1 /in/OtM0R(19): {closure}(8, 'Undefined varia...', '/in/OtM0R', 19, Array) #2 {main} thrown" ["file"]=> string(9) "/in/OtM0R" ["line"]=> int(6) }
Process exited with code 255.
Output for 5.3.20 - 5.6.28
string(13) "error_handler" int(8) string(23) "Undefined variable: buf" string(9) "/in/OtM0R" int(19) Fatal error: Wrong parameters for ErrorException([string $exception [, long $code, [ long $severity, [ string $filename, [ long $lineno [, Exception $previous = NULL]]]]]]) in /in/OtM0R on line 6 string(17) "shutdown_function" array(4) { ["type"]=> int(1) ["message"]=> string(160) "Wrong parameters for ErrorException([string $exception [, long $code, [ long $severity, [ string $filename, [ long $lineno [, Exception $previous = NULL]]]]]])" ["file"]=> string(9) "/in/OtM0R" ["line"]=> int(6) }
Process exited with code 255.