Php 是否需要使用sef定义的异常
我们都知道,PHP有一个名为“Exception”的类来处理异常情况。我经常发现像我这样的人定义了一个新的异常类来扩展类“Exception”。这个新的异常类不重写或添加任何函数。它只声明类“exception”的子类。Php 是否需要使用sef定义的异常,php,laravel,Php,Laravel,我们都知道,PHP有一个名为“Exception”的类来处理异常情况。我经常发现像我这样的人定义了一个新的异常类来扩展类“Exception”。这个新的异常类不重写或添加任何函数。它只声明类“exception”的子类。 因此,我怀疑是否有必要在我的项目中自行定义一个新的异常类?过去,我在任何地方都使用了“Exception”类。这不是必需的,但可能非常方便:如果您有不同类型的异常,您可以在捕获它们时以不同的方式处理它们: try { ... } catch (SpecificExcep
因此,我怀疑是否有必要在我的项目中自行定义一个新的异常类?过去,我在任何地方都使用了“Exception”类。这不是必需的,但可能非常方便:如果您有不同类型的异常,您可以在捕获它们时以不同的方式处理它们:
try {
...
} catch (SpecificException $e) {
// Do something specific here
} catch (SomeOtherException $e) {
// Here you can do something else
} catch (\Exception $e) {
// The rest...
}
以这种方式定义异常的主要原因是帮助调试和错误处理。像
NetworkException
这样的东西不仅信息量更大,而且您还可以在异常发生时捕获该类型的异常,因此您可以以不同的方式处理不同类型的异常。有些可能是临时的,因此您可能会捕捉到它们,并要求用户稍后重试,例如。可能重复的