Vinzenz Mai: Was ist hier falsch?

Beitrag lesen

Hallo Markus

Darf ich das nicht so schreiben...

if($feld, $feld1, $feld2, $feld3, $feld4)=="")

Wie Du dem PHP-Handbuch, Abschnitt Vergleichsoperatoren und Abschnitt Logische Operatoren, entnehmen kannst, verknüpfen diese beiden Operatorenarten genau zwei Operanden. Der Komma-Operator ist in der Operator-Rangfolge zwar aufgeführt, ich konnte jedoch keine Beschreibung dazu finden. Er macht allerdings das gleiche wie sein Gegenstück in C, siehe Komma-Operator in C.

Wie kann ich das anderes schreiben, so dass von $feld bis $feld4 alles überprüft wird

Eine Möglichkeit wäre z.B.:

  
  if ( $feld == "" || $feld1 == "" || $feld2 == "" || $feld3 == "" )  

Du könntest die einzelnen Vergleiche nochmals in Klammern setzen, dies ist deswegen nicht notwendig, weil die Vergleichsoperatoren eine höhere Priorität aufweisen als die logischen Operatoren, siehe Operator-Rangfolge.

Ach ja, was ich noch ergänzen möchte:
Möglicherweise ist der Einsatz der Funktion empty() sinnvoller als der Vergleich mit einer leeren Zeichenkette.

Freundliche Grüße

Vinzenz