IF条件下的顺序差异

时间:2015-09-02 05:33:00

标签: php

我经常在示例中阅读,并且如果条件:

,则会对此顺序进行编码
if (false === $var)
if (null  === $var) 

而不是

if ($var === false)
if ($var === null)

主要区别是什么?我应该选择哪一个?

3 个答案:

答案 0 :(得分:3)

这些被称为尤达条件。 “优势”是您在检查变量值时不会意外地为变量赋值 一个例子是:

if(100 = $ var)会给你一个语法错误。所以论证是Yoda Conditions保证你实际上检查一个值而不是设置一个值。 This pretty much sums it up.

答案 1 :(得分:0)

据我所知,这是今天的首选语法。

if (false === $var)
if (null  === $var)

因为当你意外得到这样的拼写错误时:

if ($var = false)

您将 false 分配给变量 $ var ,在运行代码时很难跟踪此错误。

答案 2 :(得分:0)

if(false === $ var) if(null === $ var)

这是检查if条件中值的首选和最佳方法 因为如果我们使用

$ var === false

手动输入错误,例如

$ var = false可能会意外地将值false赋给变量$ var并且将无法检测到。

如果为false = $ var,编译器将抛出一个明确的错误,我们可以轻松识别错误