异常处理 请教一个问题?
try {
//这里是代码
} catch (\Exception $exception) {
echo $exception->getMessage(); die();
}
//这后面还有很多代码
我想显示异常信息 并且停止后面的程序继续执行 用die();结束是对的吗?
如果 catch里面继续抛出异常 程序会停止 但是是报一个错误
是不是这样写不对
try {
//这里是代码
} catch (\Exception $exception) {
throw new InvalidException($exception->getMessage());
}
//这后面还有很多代码
关于 LearnKu
既然使用try catch了,肯定需要自己处理异常,那你后面的代码没有意义了
具体问题具体分析,不能一概而论
类似这样吧,往往自己去主动捕获了,就是希望做一些动作
echo..die() 完全没问题,这两种写法也都没问题,catch 里写代码也没啥特殊的啊,单独拿出来 echo..die 有问题吗,throw 有问题吗,没有。想让程序停止方式
die return throw都行,怎么显示异常信息和 catch 没关系了。在 catch 中可以不写任何东西,而让程序继续执行,或者干什么事情,或者继续抛出异常。其实就是不让程序抛出异常而停止运行的默认行为,自己处理异常实现逻辑上的自定义。推荐参考框架的:异常处理:
使用Reportable & Renderable来上报异常和处理异常返回。