Mailinglisten-Archive |
Hi Volker,
bei array_flip($arr); gehen doppelte Eintraege verloren!
Sollte dies jedoch nicht stoeren,
geht es noch fixer:
<?
$arry = array('rot','gelb','lila','blau','pink');
print_r($arry);
$such = 'blau';
$temp = array_flip($arry);
unset($temp[$such]);
$arry = array_flip($temp);
print_r($arry);
?>
m. b. G. Norbert
_____________________
normal: 02686-987103
Notruf: 0177-2363368
---------------------
e.o.m.
----- Original Message -----
From: "Dr. Volker Göbbels" <vmg at thinkphp-kunden.de>
To: "deutschsprachige PHP-Mailingliste" <php at phpbar.de>
Sent: Wednesday, April 28, 2004 4:13 PM
Subject: Re: [php] Array - find-and-delete -> Erledigt
Aloha,
><code>
>$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
>if(in_array('blue', $array))
>{
> unset($array[array_search('blue', $array)]); // $key = 2;
>}
>print_r($array);
>
>/* Ausgabe:
>Array
>(
> [1] => red
> [2] => green
> [3] => red
>)
>*/
><code>
Das geht auch performanter ;)
Der Value ist bekannt, aber das Array ist ja nach
Keys indiziert und nicht nach den Values. Lösung:
array_flip():
$tmp=array_flip($array);
if (array_key_exists('blue')) {
unset($tmp['blue']);
}
$array=array_flip($tmp);
Fertig ist die Laube ;)
Viele Grüße,
Volker Göbbels
--
Dr. Volker Göbbels vmg at arachnion.de
Arachnion GmbH & Co. KG http://www.arachnion.de
Sandkaulbach 4 Tel. ++49 (0) 241 5591106
52062 Aachen Fax ++49 (0) 241 5591107
Besuchen Sie uns auf dem Linux Tag in Karlsruhe! http://www.linuxtag.org
--
** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de **
Informationen: http://www.phpbar.de
http://lists.phpbar.de/mailman/listinfo/php
php::bar PHP Wiki - Listenarchive