Hallo Rolf,
Ein einfaches else würde genügen,
nein, genügt nicht, weil es ja ein zweistufiges if ist. Es gibt unterschiedliche Auslöser für den Einsatz des Default-Tab.
ja, du formulierst insgesamt drei Bedingungen, die alle erfüllt sein müssen. Aber du verteilst sie auf zwei if-Statements anstatt eine UND-Verknüpfung aller drei Bedingungen in einem if-Ausdruck zu formulieren.
Ich würde das daher zusammenfassen und vereinfachen:
if (!empty($_GET["page"]) && preg_match("/^[a-z]+$/i", $_GET["page"])==1 && file_exists($pageFile = __DIR__ . "/page/" . $_GET["page"] . ".php")) { include $pageFile; } else { include __DIR__ . "/page/game.php"; }
Das könnte man unter Verwendung des ternären Operators sogar noch zu einem Ausdruck aufhübschen.
Einen schönen Tag noch
Martin
--
Мир для України.
Мир для України.