在带有double =问题的语句中的php方程式

时间:2016-05-25 12:14:52

标签: php

我从我的php脚本中得到了一些奇怪的动作,最后发现以下声明会产生问题。因为0在php中等于某些字符串。     

if(0 == "whats Up?")
{
  echo 42;
}

使用triple" ="它做我想象的。您有可能简要回答一下这种PHP行为背后的原因和想法是什么?他们为什么要像这样实现php?

我的意思是我知道1 ==" 1"是真的,1 ===" 1"不是。这也是在python中。我也从某个地方学到0可以理解为假,但上面这个例子对我没有解释。但我相信你知道它。

提前谢谢

1 个答案:

答案 0 :(得分:1)

那是因为Type Juggling。第二个操作数转换为整数,0 == 0true

var_dump((int) "whats Up?"); // int(0)