PHP:如果变量值错误,我应该做什么 SPL 异常?

标签 php exception spl

php中有两个类似的异常:RangeExceptionUnexpectedValueException 。两者都是 RuntimeException 的子类。问题是,我看不出有多大区别。

<强> RangeException
抛出异常以指示程序执行期间的范围错误。通常这意味着除了下溢/溢出之外还存在算术错误。这是 DomainException 的运行时版本.

<强> UnexpectedValueException
如果一个值与一组值不匹配,则抛出异常。通常,当一个函数调用另一个函数并期望返回值是某种类型或值(不包括算术或缓冲区相关错误)时,就会发生这种情况。

我知道这是一个运行时错误。如果变量类型错误,很简单,我应该使用 UnexpectedValueException .

如果变量错误怎么办?

最佳答案

看起来最好保留UnexpectedValueException

  1. 我没有找到任何约定。
  2. 意外值对于程序员来说是更好的描述。
  3. 如果有特殊的恢复代码,自定义异常会更好。

关于PHP:如果变量值错误,我应该做什么 SPL 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31380030/

相关文章:

php - 有没有办法让 PHP 的 SplHeap 重新计算? (又名 : add up-heap to SplHeap? )

php - 通过 ArrayAccess 访问多维数组

php - 尝试编写查询来检索与索引值关联的多个项目

php - 登录函数始终返回 true

php - 帮助复制和粘贴编码器

java - 将元数据添加到 java throwable 对象

php - PHP SPL 库的源代码在哪里?

php - 如何减少 PHP 中的程序执行时间以及如何提高性能

java - java中BufferReader的异常处理

c# - 捕获仅在 Release 上发生的 .NET 错误,不抛出异常