If the key is 0, array_search will return 0, it does not start at 1. $arr = array('apple','banana','cranberry'); $key = array_search('apple', $arr);
print $key; // 0 If 'apple' was not found, $key would then equal to boolean false. Be sure to use "=== false" to check failure because 0 == false. For example: $fruit = array('apple','banana','cranberry'); $findme = 'apple'; if (($key = array_search($findme, $fruit)) !== false) { print "Key ($key) was found from value $findme"; } else { print "Sorry, $findme was not found in array \$fruit"; } Again, remember, 0 == false. == !=, === !==. So, 0 !== false. Wow that sounds confusing. :) Also consider the sexy array_keys() function. Regards, Philip Olson p.s. http://uk.php.net/manual/en/language.operators.comparison.php p.s.s. also take into account extra whitespace (trim), and potential issues with case sensitivity (strtolower). On Thu, 25 Apr 2002, andy wrote: > Hi there, > > I am passing an array through the URL with a ',' inbetween: > var=php,mysql,super > Parsing is done with: explode (',',$var). This gives me an array starting > with 0 > > Later on I have to search for lets say php with array_search. > > Unfortunatelly array_search requires an array starting with 1. So php is not > found. > > Does anybody know a workaround for this? > > Thanx, > > Andy > > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php