我想抛出一个自定义异常,这是我的CakePHP应用程序的控制器中的数据验证异常。如何在Cakephp中创建自己的自定义异常处理程序,以便我可以抛出异常并捕获异常?
我的代码示例:
function getUserDetails($userid){
try{
if(!$validUser){
throw new Exception('Invalid User');
}
return $userDetailsData; //returned from db
}catch(Exception $e){
echo 'Error:'.$e->getMessage();
return;
}
}
是否可以在cakephp中使用自定义Exception类,以便只能抛出那些我做的异常。希望它澄清问题。 感谢。
答案 0 :(得分:8)
CakePHP实际上很大程度上依赖于命名空间。
将\
添加到Exception
可以解决您的问题。
}catch(\Exception $e){
如果您想要更多内容,可以创建一个异常类并从该命名空间中获取对象。