Hello,
Ich würde gerne aus meinem Array alle Einträge löschen die weniger als 5 Buchstaben haben.
Na, dann tu's doch ;-)
Schleife durch das Array
http://de3.php.net/manual/en/control-structures.foreach.php
foreach ($_my_array as $key => $value)
{
## gucken, ob das Element vom Typ String ist
## http://de3.php.net/manual/en/function.is-string.php
if (is_string($value))
{
## prüfen, ob die Anzahl der Zeichen < 5 ist
## http://de3.php.net/manual/en/function.strlen.php
## hier eventuell die Multibyte-Funktion verwenden, wenn UTF-8 o.ä. benutzt wird
if (strlen($value) < 5))
{
## Element im Original-Array löschen
unset($_my_array[$key]);
}
}
}
Foreach arbeitet intern mit einer Kopie des Arrays, sodass Du dir keine Gedanken um das Aufrücken in der Kette machen musst. Um aber das Element zu löschen, hat es daher auch keinen Sinn, unset($value) zu schreiben, sondern es ist der Zugriff über den Schlüssel auf das Originalarray notwendig.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg