将对象与数字、字符串或数组进行比较


Comparing object to number, string or array

我只想知道,根据文档(1:object|2:anything=>对象总是大于===>第二个表http://www.php.net/manual/en/language.operators.comparison.php)为什么在这里:

$a = new stdClass();
var_dump($a > 10);

给我们发个"假"?

提前感谢

编辑:

奇怪的是(但根据文件):

$a = new stdClass();
var_dump($a > "lkjlkjljljlkjkljljl"); // true
$a = new stdClass();
var_dump($a > array()); // true
$a = new stdClass();
var_dump($a > array("kjkl", "lkj", "llj")); // true

$a转换为数字,但由于您没有提供数字,因此它将为0。比较$a > 100 > 10则为false,当然

$a保持零(0)。因此它是正确的,因为没有分配大于0的值。0>10是错误的。