【发布时间】:2011-10-01 22:02:19
【问题描述】:
这两种说法有区别吗:
if ($a == 'hello') { ... }
和
if ('hello' == $a) { ... }
我注意到像 Wordpress 这样的应用程序倾向于使用后者,而我通常使用前者。
我似乎记得不久前读过一些文章,为后者提供了理由,但我不记得背后的原因。
【问题讨论】:
标签: php if-statement operators
这两种说法有区别吗:
if ($a == 'hello') { ... }
和
if ('hello' == $a) { ... }
我注意到像 Wordpress 这样的应用程序倾向于使用后者,而我通常使用前者。
我似乎记得不久前读过一些文章,为后者提供了理由,但我不记得背后的原因。
【问题讨论】:
标签: php if-statement operators
没有区别。使用它是为了在您不小心进行分配而不是比较时引发错误:
if('hello' = $a)
if($a = 'hello') 将分配给变量并且不会引发错误。
它也可以用来明确地表明如果您在if 语句中有一个赋值,您真的希望它在那里并且这不是一个错误(一致性)。
【讨论】:
后者的理由是,如果您错误地输入 = 而不是 ==(赋值而不是比较),您将得到编译器错误(无法分配给常量)。
【讨论】: