Jump to content

In_array Function


ShadowMage

Recommended Posts

Hi all, I have a situation. Say I have the following array:$arrInArray = array(array("first" => 1, "second" => 2, "third" => 3), array("zero" => "none", "one" => "single", "two" => "double"))How can I find out if a value exists in the array without looping through the first dimension manually. If I do this...

if (array_key_exists("first", $arrInArray)) {	echo "\"first\" is in array<br />\n";}if (in_array("single", $arrInArray)) {	echo "\"single\" is in array<br />\n";}

...nothing is echoed. Both if statements evaluate false. If I do this...

if (array_key_exists("first", $arrInArray[0])) {	echo "\"first\" is in array<br />\n";}if (in_array("single", $arrInArray[1])) {	echo "\"single\" is in array<br />\n";}

...both statements are echoed.Is it possible to get this to work without creating a custom function with a manual loop to run through the first dimension of the array? My concern is that a custom function will chew on more resources than a builtin function. Is that true? Since the array that I'm going to be looping through will be somewhat large, this is a relatively big concern.

Link to comment
Share on other sites

You could use array_walk_recursive to do that, the downside is even if you find the element you're looking for first, it will still call the function for each element. http://www.php.net/manual/en/function.arra...k-recursive.phpA custom function could stop searching as soon as it finds a match.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...