# 5.7.6 Switch, case, break, default

Die `switch-case`-Anweisung wird gerne benutzt, wenn mehrere genau definierte Zustände vorhanden sind. Sie wird z.B. verwendet, wenn man einen Wert mit verschiedenen anderen vergleichen will und abhängig vom Ergebnis verschiedene Funktionen ausgeführt werden sollen. Vergleichbar ist dies mit der `if/elseif`-Anweisung. `default` wird ausgeführt, wenn keine der oben genannten `case`-Bedingungen zutrifft und sollte somit immer als letzte `case`-Anweisung angegeben sein.

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    <?php
    $hour = date("H");
    switch ($hour) {
        case 8:
            echo "Gääähn";
            break;
        case 9:
            echo "Kaffee";
            break;
        case 10:
            echo "Aufstehen???";
            break;
        default:
            echo "OK";
    }

Hinweis

Wenn am Ende einer `case`-Anweisung kein `break` steht, werden alle folgenden `case`-Anweisungen ebenfalls ausgeführt. Dieses Verhalten kann manchmal sehr sinnvoll sein. Stellen Sie sich vor, Sie wollen einen Kalender erstellen, der die verbleibenden Wochentage bis Sonntag darstellt. Wenn heute Mittwoch wäre, dann würde diese Art der Schleife sehr einfach alle Tage bis Sonntag auflisten können.