phpbar.de logo

Mailinglisten-Archive

[php] include_path

[php] include_path

Peter Kursawe php_(at)_phpcenter.de
Mon, 4 Feb 2002 00:00:56 +0100


Hallo Sebstian,

schau, ich mach es so:

Ich habe ein Hauptverzeichnis und mehrere Unterverzeichnisse. Im
Hauptverzeichnis liegt eine Datei alles.php, die in den
Unterverzeichnissen in jeweils allen dort vorhandenen .php-s includiert werden
soll.

In jedem Unterverzeichnis lege ich ein Script hier.php ab, und darin steht:

$subdir = "additional";      # relativ zum Hauptverzeichnis
unset($regs);
if(strstr($SERVER_SOFTWARE, 'Unix')) {
   ereg( "^(.*/)additional/([^/]+)$", $PATH_TRANSLATED, $regs);
   $localbasedateipfad = $regs[1];
} else {
   ereg( "^(.*\\\\)additional\\\\([^\]+)$", $PATH_TRANSLATED, $regs);
   $localbasedateipfad = str_replace("\\\\","\\",$regs[1]);
}
require $localbasedateipfad.'alles.php';

Der Nachteil dieser Lösung ist, dass man in jedem Unterverzeichnis im
hier.php-Skript den Namen des
Unterverzeichnisses angeben muss (drei mal!)

Der Vorteil der Lösung ist, dass Haupt- und Unterverzeichnisse an beliebiger
Stelle im WWW-Baum auftreten können,
solange ihre relative Stellung erhalten bleibt.

Ausserdem kannst Du sehen, wie ich UNIX und Windows trenne, denn auch ich
entwickle für Unix unter Windows.

Ich bin nicht sicher, dass das die beste (oder auch nur eine gut) Lösung ist -
comments welcome!

Peter Kursawe


php::bar PHP Wiki   -   Listenarchive