关于php的异常处理以及错误处理
温馨提示:
本文最后更新于 2018年03月06日,已超过 2,409 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
php异常的定义:程序在运行中出现不符合正确的业务流程的情况,允许发生(你也不想让他出现不正常的情况)但他是一种不正常的情况,按照我们的正常逻辑本不该出的错误,但仍然会出现的错误,属于逻辑和业务流程的错误,而不是编译或者语法上的错误。
php异常用于在指定的错误发生时改变脚本的运行流程
php提供了个内置的异常类()进行php的异常处理
<?php
class Exception
{
protected $message = 'Unknown exception' ; // 异常信息
protected $code = 0 ; // 用户自定义异常代码
protected $file ; // 发生异常的文件名
protected $line ; // 发生异常的代码行号
function __construct ( $message = null , $code = 0 );
final function getMessage (); // 返回异常信息
final function getCode (); // 返回异常代码
final function getFile (); // 返回发生异常的文件名
final function getLine (); // 返回发生异常的代码行号
final function getTrace (); // backtrace() 数组
final function getTraceAsString (); // 已格成化成字符串的 getTrace() 信息
/* 可重载的方法 */
function __toString (); // 可输出的字符串
}
?>
当程序运行不符合预期时,在try{}catch(){} 中的try中 都可以使用throw new 一个异常类(异常信息,异常代码)进行抛出异常
然后使用catch进行捕获异常
注意:
当一个异常被抛出时,所在try其后的代码将不会继续执行,而 PHP 就会尝试查找第一个能与之匹配的 catch。如果一个异常没有被捕获,而且又没用使用 set_exception_handler() 作相应的处理的话,那么 PHP 将会产生一个严重的错误,并且输出 Uncaught Exception ... (未捕获异常)的提示信息。
set_exception_handler();//设置一个用户自定义的异常处理函数
<?php
function a($x){
var_dump($x);
}
set_exception_handler('a');
throw new \Exception("Uncaught exception occurred!");
输出:
php错误:php脚本运行时自身出现的问题
php错误级别:
正文到此结束
- 本文标签: 编程语言
- 本文链接: https://www.php20.cn/article/115
- 版权声明: 本文由仙士可原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权