Object comparison

From: Date: Fri, 09 Nov 2012 00:07:24 +0000
Subject: Object comparison
Groups: php.internals 
Request: Send a blank email to internals+get-63785@lists.php.net to get a copy of this message
From: http://php.net/manual/en/language.operators.comparison.php An object compared to anything which is not a bool, null, or object should result in the object appearing to be greater than the other operand. For example: $a = new stdClass(); $b = new stdClass(); var_dump(null < $a); var_dump(false < $a); var_dump(true == $a); var_dump($a == $b); var_dump(0 < $a); var_dump(1 < $a); // false var_dump(2 < $a); // false var_dump("foo" < $a); var_dump("2" < $a); var_dump(tmpfile() < $a); Based on docs, I expect all nine of these to yield true, however in practice, the two marked "false" come out as false because the RHS object is converted to an integer (1), contrary to the docs. Doc bug? Or code bug? I'm inclined to call it a code bug, but wanted others' thoughts. -Sara

« previous php.internals (#63785) next »