Sie sind hier: Startseite -> PHP-Grundlagen -> Switch erweitern

Switch-Abfrage in PHP mit mehr Argumenten nutzen

Erweiterung der Abfrage

Die Switch-Abfrage habe ich bereits vorgestellt, sie hat aber gegenüber der if-Konstruktion einen erheblichen Nachteil, denn es kann nur ein Parameter abgefragt werden. Bei der if-Abfrage kann man mit and oder alternativ "&&" weitere Abfragekriterien hinzufügen oder eine Oder-Abfrage anhängen, wodurch sehr flexible Überprüfungen möglich sind.

Doch switch kann das auch. Das nachstehende Beispiel zeigt, wie man mehrere Kriterien anschließen kann. Allerdings braucht es doch einen Hinweis, denn die verschiedenen Möglichkeiten sind zueinander so verknüpft wie eine Oder-Verknüpfung bei der if-Abfrage.

Switch-Abfrage in PHP mit mehr Kriterien erweitern

<?php
$status = 20;
switch ($status) {
case 1: case 2: case 3:
echo "die niedrigsten Zahlen";
break;
case 18: case 19: case 20:
echo "die höchsten Zahlen";
break;
default:
echo "Zahlen von 4 bis 17";
}
?>

Das Beispiel zeigt, dass zwei Fälle in gewohnter switch-Manier überprüft werden, aber diesmal ist nicht eine Situation gefragt, beispielsweise oder $status gleich 1 ist, sondern es können auch 2 oder 3 sein, um die Bedingung zu erfüllen und die Meldung auf der Webseite zu präsentieren.

Hierbei ist zu beachten, dass es sich um eine Oder-Verknüpfung handelt, wie bereits erwähnt. Das bedeutet, dass $status 1, 2, oder 3 sein kann, um die Bedingung zu erfüllen. Bei der if-Abfrage gibt es auch die Möglichkeit der Und-Verknüpfung, was bedeuten würde, dass 1, 2 und 3 vorliegen müssten, um die Bedingung zu erfüllen. Diese Option steht bei switch zwar zur Verfügung, aber nicht in der oben präsentierten Form. Sehen Sie sich dazu den nächsten Artikel an.

Da viele Klammern wegfallen, die man bei der if-Konstruktion braucht, ist switch eine nette Alternative, die man sich überlegen sollte.

Erweiterte switch-Abfrage in der Praxis

Wenn man verschiedene Argumente überprüfen muss, spricht viel für die if-Abfrage, weil man häufig eine Verbindung mit "und" braucht. Bei einer Oder-Abfrage kann man switch schon verwenden, aber es wird auch dann eher die if-Abfrage werden. Switch nutzt man gerne bei einem Argument, weil die Konstruktion sehr gut lesbar ist.

Buchtipp: PHP und MySQL für Einsteiger (Thalia)*
* = Affiliate-Link; bei Kauf unterstützen Sie diese Plattform

Lesen Sie auch

Mit den Variablen kann man in PHP Werte speichern und hat damit wird die Grundbasis gelegt, dynamische Situationen zu realisieren. Die eigentliche PHP-Programmierung erfolgt aber über Abfragen und Schleifen, um auf Situationen reagieren zu können. Die if-Abfrage ist für Entscheidungen sehr oft im Einsatz, kann mit else und elseif sogar erweitert werden.

Eine zweite Option besteht mit der switch-Schleife, durch die verschiedene Situationen auf Basis eines Arguments durchlaufen werden können. Diese kann man noch erweitern durch eine Oder-Verknüpfung und zusätzlich als zweite Variante mit einer Und-Verknüpfung.

Und dann gibt es die while-Schleife, die vor allem im Zusammenhang mit Auswertungen aus der Datenbank oft genutzt wird. Sie kann durch eine do-while-Konstruktion noch verändert werden und alternativ besteht auch die Lösung der for-Schleife.

Themenseiten

Diesen Artikel teilen

Infos zum Artikel

Switch-Abfrage erweiternArtikel-Thema: Switch-Abfrage in PHP mit mehr Argumenten nutzen
Beschreibung: Die ✅ switch-Abfrage in PHP kann auch ✅ erweitert werden und zwar mit mehreren Parametern als Grundlage der Abfrage.

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel