错误和异常处理的学习
在某些编程语言(例如JAVA)在特定的情况下将自动抛出异常,但是在PHP中异常必须手动抛出。
异常处理的概念
利用try,Exception,throw写一个简单抛出并捕捉的异常
try{
throw new \Exception('发生了不可描述的错误', '500');
}catch(\Exception $e){
echo 'Exception '.$e->getCode().' : '.$e->getMessage().'<br/>'.' in '.$e->getFile().' On Line '.$e->getLine();
}
提示109行异常代码就是 throw new \Exception('发生了不可描述的错误', '500');
简单解释一下try,Exception,throw
一般是try{}代码块和catch(){}代码块配套使用,一个try{}代码块可以配合多个catch代码块捕捉不同类型的异常。
有一点需要注意:当有多个catch代码块时,传递给每一个catch代码块的对象必须具有不同的类型,这样php才能找到具体是哪个catch代码块。
throw关键字触发异常处理机制。他是一个语言结构而不是函数,所以必须要给他传一个值。
throw new \Exception('message', code);
这个类的构造函数需要两个参数:一个消息和一个错误代码。
评论