Hallo,
<?php
$var = $_GET['site'].'.php';
require_once($var);
?>
reduzieren wir das mal auf die Kernanforderung: Du möchtest ein Stück Programmcode einbinden; die Entscheidung, welches Stück Code das ist, fällt aber erst zur Laufzeit.
Wenn wir mal annehmen, dass die Auswahl der zur Verfügung stehenden Code-Bausteine begrenzt ist, könntest du jedes "Include"-File als separate Bibliothek übersetzen und zur Laufzeit des Programms dynamisch einbinden. Diese Technik ist in praktisch allen Betriebssystemen anwendbar; unter Windows heißen solche Bibliotheken beispielsweise DLL (Dynamic Link Library), und die wichtigsten Funktionen zum Umgang mit DLLs sind LoadLibrary() und GetProcAddress().
> Für jede Datei eine Funktion anlegen und die Funktion aufrufen anstatt die entsprechende Datei zu includieren?
Solange der Umfang überschaubar bleibt, wäre das auch eine Möglichkeit, und wahrscheinlich sogar effizienter.
So long,
Martin
--
Man sollte immer wissen was man sagt
- aber auf keinen Fall alles sagen, was man weiß.