7

在 PHP 中,在相同比较运算符之前放置 boolean 或 null 的根本原因是什么?

false === $value;   
null === $value;

在我看来,这与说

$value === false;

这只是个人喜好还是人们这样做的具体原因?

4

3 回答 3

12

这是避免意外分配变量的错误的惯例。

$value = false;

代替

$value === false;
于 2012-10-17T17:13:44.323 回答
4

这有时被称为Yoda-conditions ,所有这些结构及其非官方名称都有一个有趣的列表。

$var === false不, or之间没有真正的区别false === $var,有些人声称如果 bool 是左操作数,则更容易看到正在检查的内容,其他人讨厌它......简而言之:个人偏好就是它。

于 2012-10-17T17:14:19.283 回答
-1

它应该更快,但我无法通过简单的谷歌搜索来接触权威人士。看:

http://forums.phpfreaks.com/topic/222939-is-there-a-difference-between-ifvar-false-and-iffalse-var/

一种意见。

于 2012-10-17T17:15:59.643 回答