如果某个课程不存在,你应该抛出哪个PHP SPL Exception?在ZF2 coding standards for exceptions的范围内。
在标准中,它说异常应该从PHP's SPL Exceptions之一延伸。我的第一个猜测是它是某种RuntimeException。
答案 0 :(得分:2)
取决于您的申请背景。
如果您正在接收类名作为方法参数,并且尝试在同一方法中加载该类,那么您应该使用InvalidArgumentException异常。
如果从字段值或方法接收类名,则应使用RuntimeException
答案 1 :(得分:-1)
如果autoload不存在,PHP会吐出RunTimeException吗?所以如果没有找到类,你的加载器也应该这样做。 (如果您正在编写自己的自动加载器)基于ZF2编码标准,它应该抛出一个RunTimeException,它位于加载器的异常命名空间中。
因此,如果你的加载器在My \ Loader中,那么你的运行时异常将在My \ Loader \ Exception \ RunTimeException中。