Re: var_dump( (0 == 'heading') ) == TRUE ?!

From: Date: Sat, 15 May 2010 03:33:24 +0000
Subject: Re: var_dump( (0 == 'heading') ) == TRUE ?!
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-305235@lists.php.net to get a copy of this message
I'm pretty sure this is the right answer. If not, someone please correct me. PHP will compare the 0 against the integer represented by the string. So, for example, 0 == "0" would test true. 0 == "1" would test false. However, 'heading' doesn't represent a valid integer, so it appears on the right hand side as just 0, which is equal to the left hand side. James Daevid Vincent wrote: > Can someone explain why an integer 0 compared to a string evaluates to > boolean true?? > > var_dump( (0 == 'heading') ); > > Yet, > > var_dump( (1 == 'heading') ); > > Is FALSE. > > WTF? I would expect the 0 one to be FALSE too.

« previous php.general (#305235) next »