为错误抛出异常会导致使用api


Throwing exceptions for error results in consumed APIs

您是否为您使用的api的错误响应编写特定的Exception ?

例如:

class SmsServiceException extends Exception
{
}
class SmsServiceSendException extends SmsServiceException
{
}
对于这种情况,PHP中是否有特定的内置异常?因为有一个无效参数InvalidArgumentException

当遇到这种异常时,您就可以开始了。PHP有一些本地异常,但这些不涉及任何非内置的PHP问题。

错过一个参数是一个很常见的错误,因此抛出一个异常PHP需要一些东西,但是当你做自己的事情时,创建类时你可以自由地创建异常,因为你的许多想法在PHP中不会有默认的异常。

另一方面,你可以为整个API编写一个异常类,然后传入模块的名称来编辑异常,创建一个"灵活的"异常。这确实会使代码的可读性降低,所以请记住;)

这取决于:

有时候,

可以用来传递一些特定于API的数据以及异常(例如,如果API有一些应该在错误消息中报告的特定数据)。在这些情况下,编写自定义异常处理程序是正确的做法,但没有特定的规则要求您必须为使用的每个API编写特定的异常类

对于这种情况,PHP中没有内置异常