- Registriert
- 17.03.06
- Beiträge
- 116
Hallo!
Ich bin gerade mal wieder am rumexperimentieren und habe ein Problem, welches meineserachtens eigentlich häufiger auftreten müsste. Allerdings finde ich nirgends eine Lösung.
Mein Problem:
Ich möchte am Anfang einer php-Datei (a.php) ein Include auf eine andere php-Datei (b.php) machen, soweit sogut. Nun kommt allerdings der knifflige Teil. b.php liegt in /lib/b.php (also www.meinprojekt.dev/lib/b.php) a.php hingegen soll irgendwo frei in einem beliebigen Unterverzeichnis meines URL-Roots liegen (z.B. www.meinprojekt.dev/irgend/ein/pfad/a.php) Wie bekomme ich es mit möglichst wenig Code hin, dass a.php mein b.php trotzdem findet.
Meine versuchten Lösungen_
1. Die $_SERVER['DOCUMENT_ROOT'] bringt mir in diesem Fall nichts, da ich den eingebauten Apachewebserver laufen habe und eine virtuelle Adresse eingerichtet habe. Also http://www.meinprojekt.dev=http://localhost/~username/meinprojekt
2. Die ganze Zeit hatte ich eine Datei namens "ROOT" in das Basisiverzeichnis gelegt und dann rekursiv gesucht, bis ich sie gefunden hatte. Dann habe ich dementsprechend viele "../" vor meine "lib/b.php" geklebt.
3. Gerade habe ich mit dirname($_SERVER['PHP_SELF']) herumgespielt und darin dann die "/" gezählt. Lief aber im Endeffekt auf die 2.Lösung raus.
Gibt es die Möglichkeit das ganze eleganter zu lösen ?
Danke schonmal
Ich bin gerade mal wieder am rumexperimentieren und habe ein Problem, welches meineserachtens eigentlich häufiger auftreten müsste. Allerdings finde ich nirgends eine Lösung.
Mein Problem:
Ich möchte am Anfang einer php-Datei (a.php) ein Include auf eine andere php-Datei (b.php) machen, soweit sogut. Nun kommt allerdings der knifflige Teil. b.php liegt in /lib/b.php (also www.meinprojekt.dev/lib/b.php) a.php hingegen soll irgendwo frei in einem beliebigen Unterverzeichnis meines URL-Roots liegen (z.B. www.meinprojekt.dev/irgend/ein/pfad/a.php) Wie bekomme ich es mit möglichst wenig Code hin, dass a.php mein b.php trotzdem findet.
Meine versuchten Lösungen_
1. Die $_SERVER['DOCUMENT_ROOT'] bringt mir in diesem Fall nichts, da ich den eingebauten Apachewebserver laufen habe und eine virtuelle Adresse eingerichtet habe. Also http://www.meinprojekt.dev=http://localhost/~username/meinprojekt
2. Die ganze Zeit hatte ich eine Datei namens "ROOT" in das Basisiverzeichnis gelegt und dann rekursiv gesucht, bis ich sie gefunden hatte. Dann habe ich dementsprechend viele "../" vor meine "lib/b.php" geklebt.
3. Gerade habe ich mit dirname($_SERVER['PHP_SELF']) herumgespielt und darin dann die "/" gezählt. Lief aber im Endeffekt auf die 2.Lösung raus.
Gibt es die Möglichkeit das ganze eleganter zu lösen ?
Danke schonmal