PHP switch $_SERVER[‘QUERY_STRING’] vs. $_GET[‘WERT’]

Zuletzt aktualisiert am 13.06.2023 um 10:06 Uhr

5
(1)

In PHP kann man zwei Varianten für den Switch verwenden, hier eine kurze Erklärung mit den Vor- und Nachteilen beider Varianten. Aufgrund der etwas besseren Lesbarkeit wurde der Code nicht zusammen gequetscht.

Beispiel 1: $_SERVER[‘QUERY_STRING’]

<?php
switch($_SERVER['QUERY_STRING']) {
case 'beispiel1':
print 'Beispiel 1';
break;

case 'beispiel2':
print 'Beispiel 2';
break;

case 'beispiel3':
print 'Beispiel 3';
break;

default:
print 'Anderes Beispiel';
break;
}
?>

Im Browser aufrufbar mit /?beispiel1
Vorteil: keine Parameter wie seite=home wie es bei dem nächsten Beispiel wäre
Nachteil: kein anhängen weiterer Parameter möglich, wobei es bestimmt durch etlichen Code realisierbar wäre

Beispiel 2: $_GET[‘WERT’]

<?php
switch($_GET['seite']) {
case 'beispiel1':
print 'Beispiel 1';
break;

case 'beispiel2':
print 'Beispiel 2';
break;

case 'beispiel3':
print 'Beispiel 3';
break;

default:
print 'Anderes Beispiel';
break;
}
?>

Im Browser aufrufbar mit /?seite=beispiel1
Vorteil: Parameter können durch einen weiteren Switch-Block angehängt werden (seite=beispiel1&sprache=deutsch) siehe Beispiel 3
Nachteil: nicht so kurz wie in Beispiel 1

Beispiel 3: weitere $_GET[‘WERT’]

<?php
switch($_GET['seite']) {
case 'beispiel1':
print 'Beispiel 1';
break;

case 'beispiel2':
print 'Beispiel 2';
break;

case 'beispiel3':
print 'Beispiel 3';
break;

default:
print 'Anderes Beispiel';
break;
}

switch($_GET['sprache']) {
case 'deutsch':
print 'Dieser Text ist in deutscher Sprache';
break;

case 'english':
print 'This text is in english';
break;

default:
print 'Dieser Text ist in deutscher Sprache';
break;
}
?>

Im Browser aufrufbar mit /?seite=beispiel1&sprache=deutsch bzw. /?seite=beispiel1&sprache=english
Vorteil: Parameter können durch einen weiteren Switch-Block angehängt werden (seite=beispiel1&sprache=deutsch)
Nachteil: nicht so kurz wie in Beispiel 1

Andere Formatierung

switch ($_GET['seite']):
    case beispiel1:
        print 'Beispiel 1';
        break;
    case beispiel1:
        print 'Beispiel 2';
        break;
    case beispiel3:
        print 'Beispiel 3';
        break;
    default:
       print 'Anderes Beispiel';
endswitch;

Alle Angaben ohne Gewähr.
Getestet mit aktueller PHP-Version

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 5 / 5. Anzahl Bewertungen: 1

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert