php中有两个类似的异常:RangeException和expectedvalueexception。两者都是RuntimeException的子类。问题是,我看不出有什么不同。
RangeException
在程序执行期间引发异常,以指示范围错误。通常这意味着存在算术错误而不是under/overflow。这是DomainException的运行时版本。
UnexpectedValueException
如果一个值与一组值不匹配,则引发异常。通常,当一个函数调用另一个函数并期望返回值是特定类型或值,不包括算术或缓冲区相关错误时,就会发生这种情况。
我知道这是运行时错误。如果变量类型是错误的,这很简单,我应该使用UnexpectedValueException。
如果变量值是错误的,我该怎么办?
看来还是用UnexpectedValueException
比较好。
- 我没有发现任何约定。 意外值对程序员来说是更好的描述。
- 如果有一个特殊的恢复代码,一个自定义异常会更好。