为什么var_export(0 =='xxx')返回true?

时间:2013-09-23 17:52:19

标签: php

在php中如果你var_export( 0 == 'xxx' ),它返回true。这在逻辑上有什么意义呢?

1 个答案:

答案 0 :(得分:12)

请记住,PHP会为您输入值。由于您正在进行整数到字符串的比较,xxx将转换为int,并且由于那里没有有效的数字-y类型值,xxx将变为0 }。所以你有效地测试0 == 0,这总是正确的。

如果您有类似0 == '42xx'的内容,那么它会转换为0 == 42并且为false。

还有严格的等式测试===,它比较值和类型,其中0 === 'xxx'FALSE

相关问题