PHP7中的异常处理和错误处理
PHP7中异常与错误处理与之前版本对比
先上代码
ECHO PHP_VERSION.PHP_EOL;function add (int $left,int $right){ return $left+$right; }try { echo add('left', 'right');} catch (Exception $e) { // Handle exception} catch (Error $e) { // Clearly a different type of object // Log error and end gracefully var_dump($e->getMessage());}echo PHP_EOL."helloword".PHP_EOL;
PHP v5.6.1结果
5.6.1PHP Catchable fatal error: Argument 1 passed to add() must be an instance of int, string given, called in C:\usertb\shareubuntu\Workerman\fortest.php on line 8 and defined in C:\usertb\shareubuntu\Workerman\fortest.php on line 3Catchable fatal error: Argument 1 passed to add() must be an instance of int, string given, called in C:\usertb\shareubuntu\Workerman\fortest.php on line 8 and defined in C:\usertb\shareubuntu\Workerman\fortest.php on line 3[Finished in 0.0s]
PHP v7.0.15结果
7.0.15-0ubuntu0.16.04.4string(131) "Argument 1 passed to add() must be of the type integer, string given, called in /home/tb/win10share/Workerman/fortest.php on line 8"helloword
区别
在于后者可以捕获fatal error,并且可以正常输出helloword
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。