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

ste*_*ton 6 php if-statement operators

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

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

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

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

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

Fel*_*ing 9

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

if('hello' = $a)
Run Code Online (Sandbox Code Playgroud)

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

它也可以用来明确地表明,如果你在一个if语句中有一个赋值,你真的想把它放在那里,这不是一个错误(一致性).

  • 这几乎总结了一下,虽然我只想提一下,虽然使用这种风格可能会防止错误,但它确实会使if-clauses有时难以阅读. (3认同)