IF语句中值之前或之后的变量

时间:2011-07-09 15:32:20

标签: php if-statement operators

这两个陈述之间是否有区别:

if ($a == 'hello') { ... }

if ('hello' == $a) { ... }

我注意到像Wordpress这样的应用程序倾向于使用后者,而我通常使用前者。

我似乎记得刚才读过一些东西,为后者辩护,但我不记得它背后的原因。

2 个答案:

答案 0 :(得分:9)

没有区别。它被使用,以便在您意外地进行赋值而不是比较时抛出错误:

if('hello' = $a)

if($a = 'hello')将分配给变量而不会抛出错误。

它也可能用于明确地显示 if 你在if语句中有一个赋值,你真的想要它在那里并且它不是一个错误(一致性)。

答案 1 :(得分:2)

后者的理由是,如果您错误地键入=而不是==(赋值而不是比较),您将收到编译器错误(无法分配给常量)。