Auf dieser Seite werden zwei Möglichkeiten vorgestellt, mit denen PHP unterschiedliche Bedingungen prüfen kann: elseif und switch.
Mit elseif können mehrere Bedingungen nacheinander geprüft werden. Sobald eine Bedingung wahr ist, wird der entsprechende Code ausgeführt.
$note = 2;
if ($note == 1) {
echo "Sehr gut";
} elseif ($note == 2) {
echo "Gut";
} elseif ($note == 3) {
echo "Befriedigend";
} else {
echo "Andere Note";
}
Gut
Die Variable $note hat den Wert 2. Die erste Bedingung ist falsch. Die zweite Bedingung ist wahr. Deshalb wird "Gut" ausgegeben.
Wählen Sie eine Schulnote aus und klicken Sie auf "Prüfen".
Ausgabe: Gut
Mit switch kann eine Variable mit mehreren festgelegten Werten verglichen werden. Jeder mögliche Wert wird mit case beschrieben.
$tag = 3;
switch ($tag) {
case 1:
echo "Montag";
break;
case 2:
echo "Dienstag";
break;
case 3:
echo "Mittwoch";
break;
default:
echo "Anderer Wochentag";
}
Mittwoch
Die Variable $tag hat den Wert 3. PHP überprüft die einzelnen case-Anweisungen. Bei case 3 wird "Mittwoch" ausgegeben. Mit break wird die switch-Anweisung beendet.
Wählen Sie eine Zahl zwischen 1 und 7. PHP zeigt den entsprechenden Wochentag an.
Ausgabe: Mittwoch
| elseif | switch |
|---|---|
| Prüft verschiedene Bedingungen. | Vergleicht einen Wert mit mehreren Fällen. |
| Verwendet if, elseif und else. | Verwendet switch, case und default. |
| Geeignet für komplexe Vergleiche. | Geeignet für feste Auswahlmöglichkeiten. |
Wofür wird die Anweisung elseif verwendet?
Mit elseif können mehrere
Bedingungen nacheinander
geprüft werden.
Erstellen Sie eine Abfrage, die bei der Zahl 1 den Text "Sehr gut" ausgibt.
<?php
if ($note == 1) {
echo "Sehr gut";
}
?>
Ergänzen Sie die Abfrage für die Note 2.
<?php
if ($note == 1) {
echo "Sehr gut";
}
elseif ($note == 2) {
echo "Gut";
}
?>
Welcher Block wird ausgeführt, wenn keine Bedingung zutrifft?
else
Wofür wird die switch-Anweisung verwendet?
Zum Vergleichen eines Wertes
mit mehreren festen Fällen.
Erstellen Sie einen switch-Block, der bei der Zahl 1 "Montag" ausgibt.
<?php
switch ($tag) {
case 1:
echo "Montag";
break;
}
?>
Welche Anweisung beendet einen case-Block?
break;
Welche Anweisung wird ausgeführt, wenn kein case zutrifft?
default
Erstellen Sie einen case-Block, der bei der Zahl 5 den Text "Freitag" ausgibt.
case 5:
echo "Freitag";
break;
Welche Ausgabe erscheint, wenn $tag den Wert 3 besitzt?
Mittwoch
Wann sollte man switch statt elseif verwenden?
Wenn eine Variable mit
mehreren festen Werten
verglichen werden soll.
Erstellen Sie einen vollständigen switch-Block für die Werte 1 bis 3.
<?php
switch ($tag) {
case 1:
echo "Montag";
break;
case 2:
echo "Dienstag";
break;
case 3:
echo "Mittwoch";
break;
default:
echo "Ungültig";
}
?>
Mit elseif können mehrere Bedingungen geprüft werden. Die switch-Anweisung ist besonders praktisch, wenn eine Variable verschiedene feste Werte annehmen kann. Beide Anweisungen helfen dabei, Programme dynamisch zu gestalten.