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

时间:2011-07-21 03:22:56

标签: php conditional-statements

我正在浏览these PHP Coding Guidelines(有点过时但很有趣),并发现了这个:

  

条件格式

     

始终将常量放在一个左侧   平等/不平等比较。例如:if ( 6 == $errorNum ) ...

     

一个原因是,如果你遗漏了一个=符号,解析器   会为你找到错误。第二个原因是它提出了价值   你正在寻找前方,你可以找到它而不是   埋在你表达的尽头。这需要一点时间   习惯了这种格式,但它真的很有用。

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

修改

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

1 个答案:

答案 0 :(得分:6)

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

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

if ($var = 6) {} //weird semantic error
if (6 = $var) {} //parse error