PHP:条件格式 - (6 == $ var)或($ var == 6)?

use*_*091 5 php conditional-statements

我正在浏览这些PHP编码指南(有点过时但非常有趣),并发现了这个:

条件格式

始终将常数放在相等/不等式比较的左侧.例如:if ( 6 == $errorNum )......

一个原因是如果你遗漏了其中一个=符号,解析器会为你找到错误.第二个原因是它将您正在寻找的值放在您可以找到它的位置,而不是埋藏在表达式的末尾.习惯这种格式需要一点时间,但它真的很有用.

我已经使用($var == 6)多年了,把它们放在另一个方向的想法是可怕的.但如上所述,这需要一点时间来习惯并且应该有明显的好处.我们只是在我们公司编写标准,所以如果我们想要改变这一点,那么就是这样做的时刻.但是我想知道其他人是否有过这种特殊格式的经验.任何意见?

编辑

我对人们进行此切换的体验感兴趣.对我而言,最有可能是其他人,这看起来像是一个你需要习惯的重大改变.但它看起来很有趣.那么对于那些已经转换的人来说:你能推荐这个改变吗?

Exp*_*lls 6

6 == $var有一个真正的优势,$var == 6没有.根本没有什么可怕的,它只是看起来不同.你应该习惯它并使用它.事实上,我还没有习惯它,我经常忘记它.你真的必须考虑并使用它,因为相反的情况是如此常见.

如果您不知道,优点是防止简单的语法错误,因此:

if ($var = 6) {} //weird semantic error
if (6 = $var) {} //parse error
Run Code Online (Sandbox Code Playgroud)

  • 现代IDE强调这是警告. (2认同)