Leere Array-Elemente entfernen
Einige Elemente in meinem Array sind leere Zeichenfolgen auf der Grundlage dessen, was der Benutzer eingegeben hat. Ich brauche, um diese Elemente zu entfernen. Ich habe dies:
foreach($linksArray as $link)
{
if($link == '')
{
unset($link);
}
}
print_r($linksArray);
Aber es funktioniert nicht. Das $linksArray
hat immer noch leere Elemente. Ich habe auch versucht, es mit der Funktion empty()
zu machen, aber das Ergebnis ist das gleiche.
737
3
Da Sie es mit einem Array von Strings zu tun haben, können Sie einfach
array_filter()
verwenden, das all dies bequem für Sie erledigt:Beachten Sie, dass wenn kein Rückruf angegeben wird, alle Einträge von array gleich
FALSE
(siehe Umwandlung in Boolean) entfernt werden. Wenn Sie also Elemente beibehalten wollen, die z.B. die exakte Zeichenkette'0'
sind, benötigen Sie einen eigenen Callback:"Wenn kein Callback übergeben wird, werden alle Einträge von input gleich FALSE entfernt." -- http://php.net/manual/en/function.array-filter.php