07 Kontrollstrukturen
if
Das if-Konstrukt ist eines der wichtigsten Features vieler Programmiersprachen, so auch in PHP. Das Konstrukt ermöglicht die bedingte Ausführung von Codefragmenten.
if(ausdruck) {
anweisung;
}Nur wenn ausdruck den Wert true ergibt, wird anweisung ausgeführt.
if($a > $b) {
echo '$a ist grösser als $b';
}Operatoren
Vergleichs-Operatoren
Um zwei Werte in PHP zu vergleichen, gibt es die Vergleichsoperatoren == und ===. Ein Vergleichs-Ausdruck gibt immer einen boolschen Wert von true oder false zurück.
Beispiel
Name
Ergebnis
$a == $b
Gleich
Gibt true zurück, wenn $a gleich $b ist.
$a === $b
Identisch
Gibt true zurück, wenn $a gleich $b ist und beide vom gleichen Typ sind.
$a != $b
Ungleich
Gibt true zurück, wenn $a ungleich $b ist.
$a !== $b
Nicht identisch
Gibt true zurück, wenn $a ungleich $b ist oder nicht vom gleichen Typ sind.
$a < $b
Kleiner als
Gibt true zurück, wenn $a kleiner als $b ist.
$a > $b
Grösser als
Gibt true zurück, wenn $a grösser als $b ist.
$a <= $b
Kleiner Gleich
Gibt true zurück, wenn $a kleiner oder gleich $b ist.
$a >= $b
Grösser Gleich
Gibt true zurück, wenn $a grösser oder gleich $b ist.
Typenschwache und typenstarke Vergleiche
In PHP können typenschwache oder typenstarke Vergleiche durchgeführt werden. Bei typenschwachen Vergleichen (==, !=) wird der Wert der Variablen unabhängig von ihren Typen verglichen. Bei typenstarken Vergleichen (===, !==) müssen Wert und Typ beider Variablen identisch sein.
Der typenstarke Ungleich-Operator (!==) ist wahr, wenn der Wert oder der Typ unterschiedlich ist. So kann z.B. unterschieden werden, ob ein Teil-String in einem Text am Anfang (die Funktion strpos() liefert 0) oder gar nicht (strpos() liefert false) vorkommt.
Tabelle zu Typenvergleichen in PHP
Logische Operatoren
Um mehrere Vergleiche zu verbinden oder einen Vergleich umzukehren, können logische Operatoren verwendet werden.
and
or
xor
&&
||
!
Tabelle zu Logische Operatoren in PHP
else
Oft will man eine Anweisung ausführen, wenn eine bestimmte Bedingung erfüllt ist, und eine andere Anweisung, wenn dies nicht der Fall ist. Dies ist der Einsatzzweck von else.
Ternärer Operator
Um eine einfache if/else-Bedingung zu erstellen, kann auch der Ternäre Operator verwendet werden. Dies ist besonders bei der Zuweisung von bedingten Werten an eine Variable eine leserliche Alternative.
Die Klammern ( ) sind optional.
elseif
elseif, wie der Name schon sagt, ist eine Kombination aus if und else. Wie else erweitert es eine if-Kontrollstruktur, um alternative Befehle auszuführen, wenn die ursprüngliche if-Bedingung nicht zutrifft.
while
Die Bedeutung einer while-Schleife ist simpel. Die Schleife weist PHP an, die untergeordnete Anweisung wiederholt auszuführen, solange die while-Bedingung zutrifft. Die Bedingung wird jedes Mal am Anfang der Schleife überprüft.
for
for-Schleifen sind die komplexesten Schleifen in PHP. Die Syntax einer for-Schleife ist:
ausdruck1 wird vor Ausführung der Schleife ausgeführt.
ausdruck2 wird am Anfang jedes Schleifendurchlaufs ausgeführt. Wenn diese true ergibt, wird die Schleife fortgesetzt. Ergibt sie false, wird die Ausführung der Schleife abgebrochen.
ausdruck3 wird am Ende jedes Schleifendurchlaufs ausgeführt.
foreach
Das foreach-Konstrukt bietet eine einfache Möglichkeit durch Arrays zu iterieren (=schrittweise durchlaufen).
Es existiert eine zweite Schreibweise für foreach, bei der zusätzlich der Array-Schlüssel in eine Variable geschrieben wird.
Alternative Schreibweisen
Für Kontrollstrukturen gibt es eine alternative Schreibweise, die besonders beim Generieren von HTML oft besser lesbar ist.
Bei der alternativen Schreibweise werden keine { } verwendet:
Anwendungsbeispiel beim Generieren von HTML:
Herkömmliche Schreibweise...
Aufgabe
Kommentiere nun sämtliche Ausgabefunktionen in der Datei index.php aus. Kommentiere in der Datei index.php die Script-Einbindung der Datei index.view.php wieder ein.
Ändere die Datei index.view.php so ab, dass alle Fahrzeuge aufgelistet werden, welche du heute benutzt hast:
Last updated
Was this helpful?