【发布时间】:2015-09-02 05:33:00
【问题描述】:
我经常在 if 条件下阅读示例和一些代码:
if (false === $var)
if (null === $var)
而不是
if ($var === false)
if ($var === null)
主要区别是什么?我应该更喜欢哪一个?
【问题讨论】:
-
两者相似。你可以选择其中任何一个。
标签: php
我经常在 if 条件下阅读示例和一些代码:
if (false === $var)
if (null === $var)
而不是
if ($var === false)
if ($var === null)
主要区别是什么?我应该更喜欢哪一个?
【问题讨论】:
标签: php
这些被称为尤达条件。 “优点”是您在检查变量值时不会意外为其赋值。
一个例子是:
if( 100 = $var ) 会给你一个语法错误。所以争论是尤达条件保证你实际上是在检查一个值而不是设置一个值。 This pretty much sums it up.
【讨论】:
据我所知,这是今天的首选语法。
if (false === $var)
if (null === $var)
因为当你不小心遇到这样的错字时:
if ($var = false)
您将 false 分配给变量 $var,当您运行代码时很难跟踪此错误。
【讨论】:
如果(假 === $var) if (null === $var)
这是检查 if 条件中的值的首选和最佳方法 因为如果我们使用
$var === 假
手动输入错误,例如
$var = false 可能会意外地将值 false 分配给变量 $var 并且将无法检测到。
如果 false= $var 编译器会抛出一个明确的错误,我们可以很容易地识别错误
【讨论】: