PHP int的字符串评估(0)

时间:2013-10-15 03:59:29

标签: php string

为什么这个表达式在PHP中评估为true:

0 == " UNKNOWN" 

4 个答案:

答案 0 :(得分:3)

因为字符串被强制转换为int以进行比较,并且该字符串的int值为0.

请参阅http://php.net/manual/en/language.types.type-juggling.php

答案 1 :(得分:2)

你在两个变量之间进行了松散的比较;使用该运算符的规则包含在loose comparison table

答案 2 :(得分:2)

==将对您的一个值进行类型转换以匹配另一个值。

(int)" UNKNOWN"返回0

(int)0返回0

所以

0==" UNKNOWN"true

答案 3 :(得分:0)

$string == " UNKNOWN";
var_dump((int)$string); //gives 0

所以它评估为真。