嵌套与复合条件

Ema*_*sev 3 php performance

这两个示例中的哪一个会表现得更好:

例1:

if($condition_1)
{
 if($condition_2)
 {
  // do something
 }
}
Run Code Online (Sandbox Code Playgroud)

例2:

if($condition_1 and $condition_2)
{
 // do something
}
Run Code Online (Sandbox Code Playgroud)

Ezk*_*zku 6

这是过早微优化的严重情况.即使存在差异,对于不存在也是微不足道的 - 这不是哪一个表现更好的问题,哪一个更具可读性.这取决于具体情况.但是,除了上下文之外,我会说第二种选择更可取:"if"语句暗示"else",即使它不存在,并且两个"ifs"误导了读者.


Nul*_*ion 6

差异(如果有的话)可以忽略不计.由于短路评估,您不必担心第二个评估两种情况

IMO第二种形式使代码更具可读性.我讨厌看到一百万个缩进.

  • 在什么情况下第二个例子只评估$ condition_1,但是例子1评估两者? (4认同)