On Tue, 2002-02-26 at 01:29, Roger Keays wrote:
> Hi,
> 
> Can anybody explain why the output of this script is
> 
> not found
> Found!

Yup. array_search() returns the key of the found object, as noted in the
docs (http://www.php.net/array_search). Since the first test has the
searched-for field at index 0, array_search() will return an int. You're
doing a loose (==) test against TRUE (a boolean, not an int), so you 
get 'not found.'. In the second example, the searched-for item is at
index 1, which does loosely evaluate to TRUE.

I think the function you're looking for is in_array():

  http://www.php.net/in_array


Cheers,

Torben

> Here is the script...
> 
> $legalfields = array("reasonForRepair");
> if (array_search("reasonForRepair", $legalfields) == TRUE) {
>      echo "Found!<br>";
> } else {
>      echo "not found<br>";
> }
> $legalfields = array("foo", "reasonForRepair");
> if (array_search("reasonForRepair", $legalfields) ==  TRUE) {
>      echo "Found!";
> } else {
>      echo "not found";
> }
> ?>
> 
> Thanks in advance,
> 
> Roger
> 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 
-- 
 Torben Wilson <[EMAIL PROTECTED]>
 http://www.thebuttlesschaps.com
 http://www.hybrid17.com
 http://www.inflatableeye.com
 +1.604.709.0506


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

Reply via email to