Re: [discussion] add array_usearch()
Hi Robin,
On Thu, Feb 6, 2014 at 11:53 PM, Kingsquare.nl - Robin Speekenbrink <
[email protected]> wrote:
> 2014-02-06 Tjerk Meesters <[email protected]>:
> > Hi internals,
> >
> > To complement array_search(), I'm gauging the interest in adding the
> > following function:
> >
> > mixed array_usearch(array $haystack, callable $fn, int $flags = 0)
> >
> > It returns the first array key from a given haystack for which the
> callback
> > function returns a truthy value [1] or false
otherwise. The callback
> > function receives the array item as its only argument [2].
> >
> >
>
> Tjerk,
>
> This feels alot like array_filter.. Do we really want to introduce yet
> another way of doing almost the same?
>
Consider the following examples for finding a value in an array:
array_search($value, $array, true);
current(array_keys($array, $value, true));
key(array_filter($array, function($item) use ($value) {
return $item === $value;
}));
Perhaps I've overlooked one way, but that's already three ways of doing
something similar; the difference lies in the memory behaviour, the first
being O(1) whereas the other two are O(n).
I initially wanted to extend array_search()
to support a Closure as the
$needle argument, but that would lead to some BC issues.
>
> Regards,
>
> Robin Speekenbrink
>
--
--
Tjerk
Thread (11 messages)