vaudi: Relative Verlinkung / Include

Beitrag lesen

Hallöchen,

Den absoluten Pfad, sollte man nicht jeder include-Anweisung einzeln spendieren sondern im include_path setzen (set_include_path()).

Das man den include_path per script setzen kann, war mir so nicht bewußt. Dachte das ist dem Provider vorbehalten, weil dieser i.d.R. keinen Zugriff auf die php.ini gestattet.

Ermittle den absoluten Pfad für "oberstes Verzeichnis mit FTP-Zugriff", erweitere ihn um "Ordner für includes", und stell deinen include_path ein. Den Pfad kannst du fest im Script notieren oder mittels $_SERVER['DOCUMENT_ROOT'] (sofern vorhanden), der Konstante __FILE__, $_SERVER['SCRIPT_FILENAME'], $_SERVER['SCRIPT_NAME'], dem Namen des "Ordners für Website" und etwas Stringarithmetik berechnen. (Nicht alle Angaben werden gebraucht, aber das sind die, die man sich näher ansehen sollte. Bitte auch das Verhalten dieser Werte bei mod_rewrite-Verwendung testen.)

Probier ich beim nächsten Script aus.

Wenn allerdings
  a) ich den Pfad sowieso wieder zu Anfang jedes Scripts ermitteln muss
  b) ich mich nicht drauf verlassen kann, dass $_SERVER['DOCUMENT_ROOT'] vorhanden ist
  c) es möglich ist, dass das Ganze an mod_rewrite scheitert
kann ich auch gleich bei meiner derzeitigen Lösung bleiben.

MfG
vaudi