phpbar.de logo

Mailinglisten-Archive

[php] array wert leer?!

[php] array wert leer?!

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Don Okt 6 08:44:07 CEST 2005


Hallo Michael,

Michael Borchers schrieb:
> hab hier n array inner foreach schleife und theoretisch
>
> 		foreach($array as $key => $value)
> 		{
> 			if(!empty($value))
> 			{
> ...
>
> müsste ich doch via empty, isset oder !="" prüfen können,
> ob der wert vpm schlüssel leer ist, oder?!

so ähnlich. :-)

Zu empty() steht im PHP-Handbuch: "Diese Funktion liefert TRUE, wenn eine
Variable nicht definiert, leer oder gleich 0 ist, ansonsten FALSE." D.h.
diese Funktion, die Du auch oben verwendest, prüft alles, um das es Dir
geht.

Die Abfrage auf !="" macht nur Sinn, wenn Du in dem Array immer
Zeichenketten, aber nie Zahlen oder NULL stehen hättest.

isset() hilft Dir hier wenig, weil es abfragt, ob die Variable existiert.
Wenn, dann würdest Du diese Funktion auf ein Array-Element anwenden
müssen, also isset($array[$key]). Das wäre dann vergleichbar mit
array_key_exists($key, $array). Dir geht es hier aber nicht um den
Schlüssel ($key), sondern um den Wert ($value).

Wo wir also nun bei der Existenz von Schlüsseln sind - liegt hier
vielleicht Dein Problem, warum Du den Wert nicht auf leer abprüfen kannst?
Will heißen: Vielleicht hat sich irgendwo ein Fehler eingeschlichen, und
der Schlüssel mit dem leeren Wert, den Du erwartest, gibt es in dem Array
gar nicht?

Steht der Schlüssel mit dem leeren Wert denn vor der foreach-Schleife in
$array? Guck doch mal mit print_r($array) nach, wenn Du das noch nicht
getan haben solltest. :-)

Ansonsten müßtest Du Deine Frage einmal präzisieren, weil der Sachverhalt
aus Deiner Mail - wie Dennis andeutete - nicht wirklich aufschlußreich
ist. :-)


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive