why is (intval('444-44444') == '444-44444') EQUAL??!

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Huh? Why is this equal??!

	php > $id = '444-44444';

	php > var_dump($id, intval($id));
	string(9) "444-44444"
	int(444)

	php > if (intval($id) == $id) echo 'equal'; else echo 'not equal';
	equal

or in other words:

	php > if (intval('444-44444') == '444-44444') echo 'equal'; else
echo 'not equal';
	equal

I would expect PHP to be evaluating string "444-44444" against integer "444"
(or string either way)

however, just for giggles, using === works...

	php > if ($id === intval($id)) echo 'equal'; else echo 'not equal';
	not equal


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux