PHP7中的PHP错误


本文向大家介绍PHP7中的PHP错误,包括了PHP7中的PHP错误的使用技巧和注意事项,需要的朋友参考一下

介绍

在版本7之前,PHP解析器用于报告各种情况下的错误。每个错误以前都是某种预定义的类型。PHP7改变了错误报告的机制。现在,大多数错误是通过引发错误异常来报告的,而不是传统的错误报告。

如果未处理错误异常,则会报告致命错误,并将像传统错误条件一样处理。PHP的错误层次结构从Throwable接口开始。所有预定义的错误(例如ArithmeticErrorAssertionErrorCompileErrorTypeError)都是实现Throwable iterface的类。PHP 7中的异常也实现了Throwable接口。

Throwable接口充当可通过throw语句抛出的任何对象(包括ErrorException对象)的基础。用户定义的类不能直接实现Throwable接口。相反,要声明用户定义的异常类,它必须扩展Exception类。

PHP的异常处理包括throwcatchtry语句。为了引发异常对象,有throw关键字。被抛出的异常由catch块处理。try块中包含了可能容易受到异常影响的PHP代码。

可能存在一个或多个catch块来捕获Exception类的不同实例。如果try块中没有异常发生,则正常执行将在最后一个catch块之后继续。但是,当在try块中引发异常时,PHP会尝试查找与要处理的异常类型匹配的catch块,而不是执行nest语句。如果没有定义匹配的catch块,PHP解析器将报告致命错误,并显示Uncaught Exception消息。

您也可以在catch块之后或代替catch块提供finally块。无论是否在try块内发生异常,finally块中的代码将始终执行。