Definieren root-Pfad eine Zeit an einem Ort

Ich gerne verweisen Bilder, css-und php-Dateien mit Ihren absoluten Pfad, d.h. ausgehend von der Wurzel, mit einer Adresse, beginnend mit "/".

Muss ich include die php-Dateien sind alle auf "/bin/res/include". Ich habe herausgefunden, ich kann nicht mit absoluten Pfaden in php, wie mache ich in html. Nach einigen Recherchen entdeckte ich die beste Methode, die passt meine Bedürfnisse ist

define("PHP_ROOT", "/home/a7503679/public_html/bin/res/include/");

dann einige Datei

include_once(PHP_ROOT."filename.php");

Ich nicht wollen, fügen Sie zuerst definieren, die auf jeder html-Seite. Kann ich einen global definieren? Kann ich definieren, dass eine Konstante Zeit an einem Ort und machen Sie es bekannt, dass alle html-Seiten? Wenn ja, wie und wo ist der globalen?


  • Ich kann nicht mit dirname(__FILE__); da, nur gibt den vollständigen Pfad zu dem Ordner, wo ich derzeit bin, die möglicherweise nicht die Wurzel.
  • Ich kann nicht mit $_SERVER['DOCUMENT_NAME'] denn ich bin mit einem shared-hosting-service.

[UPDATE:Lösung] thx an alle, besonders RiaD für seine Idee, das ist, was ich getan habe:

Bearbeitet meine .htaccess-Datei im Stammverzeichnis meiner website und fügte hinzu, die folgende Zeile,

#Loads an init php located at <fullpath>/<path-to-folder-with-php-files-to-include>/init.php
php_value auto_prepend_file /home/a7503679/public_html/bin/res/include/init.php

Nun alle meine html-Dateien enthalten, init.php Datei, so sollten Sie (wie ich) dort alle gängigen php-code müssen Sie auf jeder html-Seite, in meinem Fall war:

<?php
define("PHP_ROOT", "/home/a7503679/public_html/bin/res/include/"); #this solves the problem
include 'lang.php'; #translations file
?>

Bevor ich brauchte, um zu umfassen, dass lang.php auf jeder Seite und jetzt ist es automatisch gemacht. Wenn ich auch andere php-Datei, mit den absoluten Pfad, ich tippe einfach include PHP_ROOT.'filename.php';

InformationsquelleAutor dialex | 2011-08-05

Schreibe einen Kommentar