On Wednesday 30 March 2005 08:11, Carl McDade wrote:
Hmm,
After I wrote that last post I realized that booleans may be effected also. You might check this:
0 == FALSE; //true 0 === FALSE; //false
Which is one of the main reasons for the existence of "===". Some functions, such as some of the string searches, can return zero as a real data value if they happen to match on the first character of a string, but they also return FALSE if they don't match at all. "===" provides the calling routine a way to distinguish between 0 and FALSE. It can also be used to distinguish, with some of the more complex data types such as strings, whether two reference variables are for the *same* item or for two *different* items that have the identical contents. Scott -- -----------------------+------------------------------------------------------ Scott Courtney | "I don't mind Microsoft making money. I mind them scott@4th.com | having a bad operating system." -- Linus Torvalds http://4th.com/ | ("The Rebel Code," NY Times, 21 February 1999) | PGP Public Key at http://4th.com/keys/scott.pubkey