"Lars Torben Wilson" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> On Sat, 2003-06-28 at 11:28, Bobby Patel wrote:
> > In PHP there are two operators for comparisons, the double and triple
> > equivalance.
> >
> > Double equivalance just check's the boolean type so if (0 == 'n') is
> > translated to if (False == False), where as triple equivalance checks
the
> > data types as well so if (0==='n') becomes if
(Int(False)==String(False))
> > but since the data types don't match that would be False.
> >
> > to get a better reference check PHP.net for 'Bolean Types' , because  I
> > think I dodn't explain the double equivalance right, and also it will
> > clarify situations of the Null type.
> >
> > Bobby
>
> You got pretty close, but not quite. :) In the case of the equality
> operator '==', there is nothing specific to do with boolean evaluation
> going on. It just converts the string to its integer value implicitly
> before checking for equality, and according to the string->integer
> conversion rules, the string ends up being (int) 0 so the whole thing
> matches.
>
> Also, it might be easier to think about the identical operator '===' as
> just testing whether two values are identical, meaning that they are
> both of the same type, and that they both have the same value.


Yeah, I understand the difference between the double and triple '='.  I was
just surprised to find that when comparing what was two string values,
because one of the strings was '0', it decided to convert both strings to an
integer.  I'll just have to use the '===' or strcmp from now on.

>
> More information:
>
> http://www.php.net/manual/en/language.types.type-juggling.php
>
http://www.php.net/manual/en/language.types.string.php#language.types.string.conversion
>
> ...in fact, the whole 'Language' section of the manual has a bunch of
> stuff on this.
>
>
> Hope this helps,

Thanks.

>
> Torben


  -- Rob




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

Reply via email to