While that is true, you need to know the key, 
you could do something like this, 
which I think is more efficient than your way...

foreach($array as $key => $value)
{
        if ($value == $remove) 
        {
                unset($array[$key]);
                //if you know there is only one hit, 
                //then you could also:
                //return;
                //for more efficiency and speed.
        }
}

> On 4/10/07, Richard Lynch <[EMAIL PROTECTED]> wrote:
> > http://php.net/unset
> 
> That works when you know the key, but will that work when you only
> know the value?
> 
> Tijnema
> >
> >
> > On Tue, April 10, 2007 2:49 pm, Tijnema ! wrote:
> > > Hi,
> > >
> > > Is there currently a function that removes a key/value 
> from an array?
> > > I use this code right now:
> > > function array_remove($array,$remove,$remove_value = true)
> > > {
> > >       foreach($array as $key => $value) {
> > >               if($remove_value && $value != $remove) {
> > >                       $new_array[$key] = $value;
> > >               } elseif (!$remove_value && $key != $remove) {
> > >                       $new_array[$key] = $value;
> > >               }
> > >       }
> > >       return $new_array;
> > > }
> > >
> > > array_remove(array(1=>2,2=>3),2,true); // array (2=>3)
> > > array_remove(array(1=>2,2=>3),2,false); // array (1=>2)
> > >
> > > Anyone knows if there already exists such function?
> > >
> > > Else should i create future request?
> > >
> > > Tijnema
 

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

Reply via email to