php false定义为零吗?

时间:2013-10-22 08:42:25

标签: php

if (0)始终返回 false if(false)也会返回 false 。我无法理解这些差异。在这两种情况下,实际上如何返回?它是 NULL 还是其他任何东西?

2 个答案:

答案 0 :(得分:3)

falseboolean0integerNULL代表无价值的变量。

if构造

    if( expression ) statement;

if期望expressionboolean,因此integer 0评估为boolean false

更多信息:

  

如果运算符,函数或控制结构需要boolean参数,则大多数情况下的值将自动转换。

转换为布尔值时,以下值被视为 FALSE

其他每个值都被视为 TRUE (包括任何resource)。

有关详细信息,请查看Booleans

答案 1 :(得分:0)

想象一下,您将[0, null, false, "", array(), etc]与现有的东西或非空的东西进行比较。

PHP不是强类型语言。当非严格比较(==)时,请查看false,如下所示:

0苹果不是苹果,而是false (has apples more then 0? No)

array() - false (set is not empty? No)

"" - false (has string symbols? No)