Better multidimensional search

Better multidimensional search

am 16.01.2008 23:32:13 von Guillaume Dargaud

Hello all,
I'm pretty sure there's a better way to do this without having to explore
the whole array until a match is found, but the solution escapes me at the
moment:

foreach ($Array as $key)
if ($key[1]===$Whatever) {
$Found=$key[0];
break;
}

--
Guillaume Dargaud
http://www.gdargaud.net/

Re: Better multidimensional search

am 16.01.2008 23:44:15 von elmosik

On 16 Sty, 23:32, "Guillaume Dargaud"
wrote:
> I'm pretty sure there's a better way to do this without having to explore
> the whole array until a match is found, but the solution escapes me at the
> moment:
>
> foreach ($Array as $key)
> if ($key[1]===$Whatever) {
> $Found=$key[0];
> break;
> }

If you're looking for key instead of item you should write:

foreach( $array as $key => $item )...

looking for item? use array_search.

Re: Better multidimensional search

am 17.01.2008 23:42:58 von Guillaume Dargaud

> If you're looking for key instead of item you should write:
> foreach( $array as $key => $item )...
Right, I should have written $item

> looking for item? use array_search.
Hmmm... But I'm looking only in the 2nd 'column' of a 2D array. array_search
or in_array don't let me narrow down the search for a specific column. How
can I do that ?

--
Guillaume Dargaud
http://www.gdargaud.net/