PHP: default Zweig in switch will nicht anspringen
bearbeitet von Felix RiestererLieber claus,
mir wäre das Script zu unübersichtlich. Warum definierst Du kein assoziatives Array, welches die zu inkludierenden Skripte enthält?
~~~ php
$inc = [
'hom' => 'home',
'ba1' => 'basics1',
'ba2' => 'basics2'
];
if (!array_key_exists($_GET['kap'], $inc)) {
exit(header('Status: 403', TRUE, 403));
}
include include('kapitel/kap_'.$inc[$_GET['kap']].'.php');
~~~
Jetzt sieht man sehr schön, dass ein ungültiger Wert in `kap` zu einem `exit` mit 403-er führt. Danach wird das garantiert Passende inkludiert. Keine umschweifige `case`-Notation, kein `default`-Zweig oder mehrfache `exit`-Anweisungen mehr...
Liebe Grüße
Felix Riesterer