php \Exception
和\RuntimeException
php 之间的确切语义差异是什么?
什么时候应该使用前者而后者呢?
异常是PHP中所有异常的基类(包括RuntimeException).正如文件所说:
如果只能在运行时发现错误,则抛出RuntimeException.
这意味着每当你期望通常应该工作的东西时,就会出错:例如:除零或数组索引超出范围等.你可以抛出RuntimeException.
至于Exception,这是一个非常通用的例外,我称之为"最后的手段".您可以在"尝试"中将其添加为最后一个,以确保您正在处理所有异常.
例:
try { //code... } catch(RuntimeException $e) { echo ("RuntimeException..."); } catch(Exception $e) { echo ("Error something went wrong!"); var_dump($e); }
希望现在是清楚:)