异常处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异常处理相关的知识,希望对你有一定的参考价值。

 

 

 

php 5 添加了类似于其它语言的异常处理模块。在 PHP 代码中所产生的异常可被 throw 语句抛出并被 catch 语句捕获。需要进行异常处理的代码都必须放入 try 代码块内,以便捕获可能存在的异常。每一个 try 至少要有一个与之对应的 catch。使用多个 catch 可以捕获不同的类所产生的异常。当 try 代码块不再抛出异常或者找不到 catch 能匹配所抛出的异常时,PHP 代码就会在跳转到最后一个 catch 的后面继续执行。当然,PHP 允许在 catch 代码块内再次抛出(throw)异常。 

 

function daoShu($num){
if(!is_numeric($num)){
throw new Exception(‘不是正确的数字值‘,‘101‘);
} else if(!$num){
throw new Exception(‘数字不能为0‘,‘102‘);
}
return 1/$num;
}

/**
* 异常使用try块包含,但是如果执行中出现了异常代码,则后面的代码不会再执行了,而跳转到catch块执行
* finally块无论是否会发生异常,始终会在最后执行
*/
try{
// $n1 = daoShu(‘abc‘);
// $n1 = daoShu(0.0);
$n2 = daoShu(‘0‘);
echo $n2;

}catch (Exception $ex){
echo ‘异常序号:‘.$ex->getCode().‘,异常描述:‘.$ex->getMessage().‘<br>‘;
}

以上是关于异常处理的主要内容,如果未能解决你的问题,请参考以下文章

使用片段中的处理程序时出现非法状态异常

Java异常处理机制

java 反射代码片段

java.util.MissingResourceException: Can't find bundle for base name init, locale zh_CN问题的处理(代码片段

使用实体框架迁移时 SQL Server 连接抛出异常 - 添加代码片段

片段中的Android致命异常