Re: in_array not operating as 'expected'

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

 



Thanx both of you,

I know the type-casting bit and have noticed the third parameter which
'fixes' the in_array issue. I just missed 'test' == 0 implied (int) 'test'
== 0. Typecasting a string to integer indeed returned 0. Typecasting is
of course not necessary within if statements, resulting in my confusion.

Thanks again,

Ivo


On Tue, 09 Nov 2004 12:42:51 +0200, Bogdan Stancescu wrote:

> Apart from Marek's reply, you should probably check the in_array()
> documentation (look at the third, optional parameter) and search for type
> casting on php.net.
> 
> Cheers,
> Bogdan
> 
> Ing. Ivo F.A.C. Fokkema wrote:
> 
>> Hi guys and gals,
>> 
>> I'm not screaming "Bug! Bug!" but this _does_ look 'illogical' to me.
>> I've searched the archives, but found no earlier conversation. Sorry if
>> I missed it. Consider the following code:
>> 
>> var_dump(in_array('test', array(0)));
>> 
>> What does this return? I expect bool(false), but it returns bool(true).
>> After some searching the web, I bumped into this:
>> http://www.phpdiscuss.com/article.php?id=67763&group=php.bugs
>> 
>> Basically, it is said by derick [at] php.net that this behavior is
>> expected. The following code :
>> 
>> var_dump('test' == 0);
>> 
>> also returns bool(true). But my logic tells me, that if 'test' == 0,
>> then :
>> 
>> if (0) {
>>   ...
>> }
>> }
>> should do the same as
>> 
>> if ('test') {
>>   ...
>> }
>> }
>> but it doesn't! The first if-statement is _not_ executed, the latter is.
>> In my opinion, this is not correct. Any thoughts on this? Am I not
>> seeing the logic here?
>> 
>> Thanks for your thoughts.
>> 
>> Ivo Fokkema

-- 
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