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