在PHP中,在相同的比较运算符之前放置boolean或null的根本原因是什么?
false === $value;
null === $value;
在我看来,它与说法相同
$value === false;
这只是个人偏好还是有人为什么这样做的具体原因?
答案 0 :(得分:12)
避免意外分配变量的错误是一种约定。
$value = false;
而不是
$value === false;
答案 1 :(得分:4)
这有时被称为 Yoda-conditions ,有一个有趣的list of all such constructs及其非官方名称。
没有$var === false
或false === $var
之间没有真正的区别,有些人声称如果bool是左操作数,则更容易看到正在检查的内容,其他人讨厌它......简而言之:个人喜好就是这样。
答案 2 :(得分:-1)
它本来应该更快,但我无法通过一个简单的谷歌搜索来说明一个权威。参见:
http://forums.phpfreaks.com/topic/222939-is-there-a-difference-between-ifvar-false-and-iffalse-var/
一个意见。