抛出没有消息的自定义异常

时间:2016-10-19 11:05:20

标签: php error-handling try-catch except

之前我还没有使用自定义例外,现在似乎我可能需要它们,但我不确定我是否理解它们应该如何使用。

说我有这样的自定义异常:

class not_found_exception extends exception{ }

然后我有一堆请求处理函数(我认为它们在野外被称为控制器)。每个函数都可以抛出不同类型的异常。如果URL不匹配则抛出我的自定义异常,脚本将捕获该类型的异常并跳转到下一个请求处理程序(如果它被捕获)。但是其他类型的异常不应该被捕获,因为它们意味着url匹配但是应该显示其他一些错误。

问题是我的自定义异常不需要错误消息,因为它不会出现在任何地方,因为它应该被捕获,但是其他例外情况也是如此。那么抛出一个空的not_found_exception异常是否可以?

1 个答案:

答案 0 :(得分:1)

简短的回答很简单:是的。那没关系。 有关异常的最佳实践的更多信息,请参阅此博客。它可能是为.NET编写的,但理论仍然可以应用于PHP。

https://blogs.msdn.microsoft.com/kcwalina/2007/01/30/how-to-design-exception-hierarchies/