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

在带有OR的PHP中的IF语句中,如何跟踪哪个条件评估为false?

发布时间:2020-12-13 22:02:26 所属栏目:PHP教程 来源:网络整理
导读:例如,在这样的 PHP代码中: if($this-function1() $this-function2()){ //everything is alright}else{ //function1 or function2 returned false //whodunnit?} 是否有语言结构或某些东西可以帮助我找出else块中的罪魁祸首?我不想再次运行条件,只是为了找
例如,在这样的 PHP代码中:

if($this->function1() && $this->function2())
{
  //everything is alright
}
else
{
  //function1 or function2 returned false
  //whodunnit?
}

是否有语言结构或某些东西可以帮助我找出else块中的罪魁祸首?我不想再次运行条件,只是为了找出问题所在.

请忍受我的伪代码.我的实际代码在这里看起来完全脱离了上下文…顺便说一句,我正在使用CodeIgniter.

解决方法

I want to use the name of the function that caused the error.

这有点难看.我不会用它(=“为此目的”).
此外,我正在制作这个CW以避开downvotes.

if ($this->function1($failed="func1") && $this->function2(..,$failed="func2")) {
    ...
 }
 else {
    print $failed;

这种语法解决方法需要您可以使用所需的数字填充方法参数,并在未使用的位置传递假的$failed参数.实际上它只是将此变量添加到局部变量范围.

您可以使用更多&&&& ands和()parens同样的效果.这有点紧张.然而,我不确定我是否理解为什么你会想要一个带有失败函数名的字符串,而不仅仅是一个布尔值,或者ifphobia是什么.

(编辑:李大同)

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

    推荐文章
      热点阅读