加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – 理解异常

发布时间:2021-08-28 03:48:17 所属栏目:大数据 来源: https://www.jb51.cc
导读:我已阅读文章,试图了解在PHP中使用的异常,我已经完成了论坛中已经给出的答案.对我来说至少有一点意义的答案之一是这一个:Are exceptions in php really that useful? 这是一个简单的函数,用于在使用和不使用异常的情况下查找整数的倒数(source): 除外: fu

我已阅读文章,试图了解在PHP中使用的异常,我已经完成了论坛中已经给出的答案.对我来说至少有一点意义的答案之一是这一个:Are exceptions in php really that useful?

这是一个简单的函数,用于在使用和不使用异常的情况下查找整数的倒数(source):

除外:

function inverse($x) {
  if ($x==0) { 
     throw new Exception('Division by zero.');
  } else { 
     return 1/$x;
  }
}    

try {
  inverse();
} 
catch (Exception $e) {
  echo $e->getMessage();
}

没有例外:

function inverse($x) {
  if ($x==0) { 
     echo "I'm zero. Don't let me be the denominator."; 
  } else { 
     return 1/$x;
  }
}    

所以这是我的问题,为什么以及何时应该使用一个而不是另一个?

解决方法:

关于“何时使用例外”有各种各样的意见.我的个人意见是:

>如果您正在使用自己的代码,那么基本上不需要抛出异常,因为您需要为它编写自己的处理程序 – 这也可以在不抛出异常的情况下完成.
>如果您正在开发其他程序员正在使用的API,那么抛出异常会很有用,因此使用您的代码的开发人员知道,他必须处理错误,并了解错误原因是什么. (而不是只是获取null他可能会捕获NumberToSmallException,NotANumberException,….)

换句话说:当你已经知道如何处理异常时 – 不要抛出异常.如果处理应由另一位开发人员负责,请使用您的代码 – 抛出它.

不应使用异常来控制应用程序逻辑的流程.因此使用if / else语句.

但这些只是我的十美分.

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读