PHP Tutorial: Kontrollstrukturen

Manchmal möchte man, dass bestimmte Teile des Scriptes nur dann ausgeführt werden sollen, wenn einige Bedingungen vorliegen. Hierfür verwendet man die if- bzw. if-else-Anweisung. Wenn die Bedingung wahr ist, dann wird der Block der if-Anweisung ausgeführt. Ist sie falsch, wird die eventuell vorhande else-Anweisung ausgeführt. Else ist aber nicht zwingend erforderlich. Sie kann auch weg gelassen werden. In diesem Falle wird bei einem Falsch in der Bedingung nichts ausgeführt.

Vergleichs-Operator

Um die Bedingung für die if-Anweisung formulieren zu können, werden Vergleichs-Operatoren benötigt. Hier gibt es für unterschiedliche Anwendung viele Operatoren. Folgende Operatoren sind die gängigsten Operatoren:

Aufbau der if-Anweisung

Nachfolgend der Aufbau einer if-Anweisung:

  1. <?php
  2.    if(cond)
  3.       tuWas();
  4.    tuWasNeues();
  5. ?>

In dieser Schreibweise wird, wenn die Bedingung (in dem obigen Beispiel als "cond" gekennzeichnet) wahr wird, die Anweisung tuWas(); zusätzlich zu tuWasNeues() ausgeführt. Ist die Bedingung falsch, wird nur tuWasNeues() ausgeführt. Möchte man mehr als nur eine Anweisung schreiben, muss man einen Block aufmachen. Dieser Block wird durch geschweifte Klammern gekennzeichnet.

  1. <?php
  2.    if(cond) {
  3.       tuWas();
  4.       tuWasAnderes();
  5.    }
  6.    tuWasNeues();
  7. ?>

Damit man einheitlichen Code schreibt, empfehle ich immer die geschweiften Klammern zu verwenden, selbst wenn man nur eine Zeile benötigt. Es ist auch leserlicher.

Aufbau der if-else-Anweisung

Die if-else-Anweisung sieht der normalen if-Anweisung sehr ähnlich. Sie bekommt zusätzlich zu den Block des if-Bereichs noch einen else-Block. Da ich die Schreibweise mit den Klammern bevorzuge, lasse ich die Beispiele ohne Klammern gleich weg. Sie sind aber analog zu den oben gezeigten Beispielen.

  1. <?php
  2.    if(cond) {
  3.       tuWas();
  4.    } else {
  5.       tuWasAnderes();
  6.    }
  7. ?>

Bei diesem Beispiel wird tuWas() ausgeführt, wenn die Bedingung wahr ist. Ist sie falsch, dann wird tuWasAnderes() ausgeführt.

Mehrere unterschiedliche Bedingungen

Es besteht dann noch zusätzlich die Möglichkeit, dass man mehrere Bedingungsblöcke hat. Es lassen sich beliebig viele Blöcke kombinieren. Ein Beispiel hierfür sieht wie folgt aus:

  1. <?php
  2.    if(cond) {
  3.       tuWas();
  4.    } elseif(cond2) {
  5.       tuWasNeues();
  6.    } else {
  7.       tuWasAnderes();
  8.    }
  9. ?>

Die Bedingung

Die oben genannten Dingen waren jetzt die graue Theorie zu den Kontrollstrukturen. Jetzt möchte ich dies noch anhang von einigen "echten" Beispielen zeigen.

  1. <?php
  2.    // Variablen mit einem Wert belegen
  3.    $zahl1 = 4;
  4.    $zahl2 = 5;
  5.    $zahl3 = 5;
  6.  
  7.    if($zahl1 == $zahl2) { // ergibt false
  8.       echo 'Die Zahlen sind gleich';
  9.    }
  10.    if($zahl1 < $zahl2) { // ergibt true
  11.       echo 'Die Zahl in $zahl1 ist kleiner als die Zahl in $zahl2';
  12.    }
  13.    if($zahl2 >= $zahl3) { // ergibt true
  14.       echo 'Die Zahl in $zahl2 ist größer gleich der Zahl in $zahl3';
  15.    }
  16. ?>

Aus dem obigen PHP-Code ergibt sich dann folgende HTML-Ausgabe:

Die Zahl in $zahl1 ist kleiner als die Zahl in $zahl2 Die Zahl in $zahl2 ist größer gleich der Zahl in $zahl3

Zur Übersicht der PHP Tutorials.