4 Bedingungen

  • Unsere kleinen PHP-Skripte wurden bis jetzt nacheinander abgearbeitet. Damit ein Skript oder auch Programm bei Ereignissen reagieren kann, gibt es Verzweigungen und Schleifen, die bei bestimmten Bedingungen durchlaufen werden. Zunächst geht es an dieser Stelle um die Bedingungen am Beispiel der if-Verzweigung. In den folgenden Kurs-Teilen dann speziell um Verzweigungen und danach um Schleifen. (beispiel_05.php) 01: <?php 02: $x = 5; 03: $y = 6; 04: if($x< $y) echo "$x ist kleiner als $y."; 05: ?> Wir haben im Beispiel also erst einmal wieder die übliche Einleitung mit "<?php", danach werden zwei Variablen definiert. In Zeile 4 kommt dann eine Verzweigung. In diesem Falle handelt es sich um die if-Verzweigung, in den Klammern steht die Bedingung und dahinter der oder die Befehle, die ausgeführt werden sollen, wenn die Bedingung erfüllt bzw. der Wahrheit entspricht. Die Bedingung selber ist wie Mathematik: x kleiner y. Damit lässt sich die Verzweigung folgendermaßen in Worte fassen: Wenn x kleiner y ist, dann gebe aus... . Das Kleiner-als-Zeichen ist hier der Operator, die Variablen und die zu vergleichenden Objekte. Operatoren und ihre Bedeutung: "==" - ist gleich "!=" - ist ungleich ">" - ist größer "<" - ist kleiner ">=" - ist größer oder gleich "<=" - ist kleiner oder gleich. Alle Operatoren lassen sich auf Zahlen als auch auf Zeichenketten anwenden, wobei es bei den letzten vier Operatoren im Bezug auf Zeichenketten einige Fallstricke gibt. Ein Problem stellen hier meist die deutschen Umlaute und das scharfe s (ß) dar. (beispiel_06.php) 01: <?php 02: $a = "Klaus"; 03: $b = "Hans"; 04: if($a == "Klaus") echo "Das ist Klaus."; 05: if($b != "Klaus") echo "Das aber nicht."; 06: if($a == "Klaus" && $b == "Hans") echo "Das sind Klaus und Hans."; 07: $b = "Dieter"; 08: if($a == "Klaus" || $b == "Hans") echo "Klaus oder Hans ist da und noch jemand."; 09: if(!($b == "Klaus")) echo "Klaus ist nicht da."; 10: ?> Beispiel 6 zeigt nochmal, dass Sie nicht nur Variablen in einer Bedingung miteinander vergleichen können, sondern auch Variablen mit einer Konstante, in Zeile 4 ist es beispielsweise "Klaus". In Zeile 6, 8 und 9 habe ich noch logische Operatoren mit hinein genommen. Logische Operatoren und ihre Bedeutung: "&&" - logisches Und"||" - logisches Oder"!" - logisches Nicht. Zeile 6 bedeutet dann also: Wenn a gleich "Klaus" ist und b gleich "Hans", dann gebe aus... . Während Sie das logische Und und das logische Oder zwischen zwei Teilbedingungen setzen, kommt das logische Nicht vor die Bedingung, es kehrt die Bedingung nämlich einfach um (Zeile 8): Wenn nicht b gleich Klaus ist, dann gebe aus... . Die Teilbedingung b gleich "Klaus" steht in Klammern, damit diese Bedingung (wie in der Mathematik) zuerst überprüft wird. Damit eine Verzweigung oder eine Schleife durchlaufen wird, muss die Bedingung wahr sein. Beim Programmieren heißt es auch true (wahr) zurückgeben. Wenn sich nicht wahr ist (false), dann wird die Verzweigung oder Schleife nicht ausgeführt.