·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> php网站开发 >> 异常处理

异常处理

作者:佚名      php网站开发编辑:admin      更新时间:2022-07-23
异常处理 - php手册笔记

PHP代码中所产生的异常可被throw语句抛出,并被catch语句捕获。需要进行异常处理的代码都必须放入try代码块内,每一个try至少要有一个与之对应的catch。当一个异常被抛出时,所在代码块后面的代码将不会继续执行,此时PHP会尝试查找第一个能与之匹配的catch。当然,PHP允许在catch代码块内再次抛出throw异常。如果一个异常没有被捕获,且未使用set_exception_handler()作相应处理的话,PHP将会产生一个严重错误。

这里有一个关于异常使用的示例。

<?phpfunction inverse($x) {    if(!$x) {        throw new Exception('Division by zero.');    } else {        return 1 / $x;    }}try {    echo inverse(5) . '<br>';    echo inverse(0) . '<br>';} catch(Exception $e) {    echo 'Caught exception: ' . $e->getMessage() . '<br>';}echo 'hello';

还有一个异常嵌套的示例。

<?phpclass MyException extends Exception {}class Test {    public function testing() {        try {            try {                throw new MyException('foo.');            } catch(MyException $e) {                throw $e;            }        } catch(Exception $e) {            var_dump($e->getMessage());        }    }}$foo = new Test;$foo->testing();

用户可以用自定义的异常处理类来扩展PHP内置的异常处理类。

(全文完)