PHP7中异常与错误处理与之前版本相比,有哪些长尾词差异和改进?
- 内容介绍
- 文章标签
- 相关推荐
本文共计336个文字,预计阅读时间需要2分钟。
PHP7 中异常与错误处理及与先前版本对比,先代代码示例:php
function add($left, $right) { return $left + $right;}
try { echo add(left, right);} catch (Exception $e) { // 处理异常} catch (Error $e) { // 处理错误}
先上代码
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.1 PHP 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 3 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 3 [Finished in 0.0s]
PHP v7.0.15结果
7.0.15-0ubuntu0.16.04.4 string(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
以上就是PHP7中异常与错误处理与之前版本对比的详细内容,更多请关注自由互联其它相关文章!
本文共计336个文字,预计阅读时间需要2分钟。
PHP7 中异常与错误处理及与先前版本对比,先代代码示例:php
function add($left, $right) { return $left + $right;}
try { echo add(left, right);} catch (Exception $e) { // 处理异常} catch (Error $e) { // 处理错误}
先上代码
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.1 PHP 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 3 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 3 [Finished in 0.0s]
PHP v7.0.15结果
7.0.15-0ubuntu0.16.04.4 string(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
以上就是PHP7中异常与错误处理与之前版本对比的详细内容,更多请关注自由互联其它相关文章!

