您的位置:首页 > 编程语言 > PHP开发

异常处理 - PHP手册笔记

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

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

<?php
function 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';

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

<?php
class 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内置的异常处理类。

(全文完)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: