Heim > Backend-Entwicklung > PHP-Tutorial > Wie binde ich Dateien mit relativen Pfaden in PHP korrekt ein?

Wie binde ich Dateien mit relativen Pfaden in PHP korrekt ein?

DDD
Freigeben: 2024-11-28 05:55:11
Original
368 Leute haben es durchsucht

How to Correctly Include Files Using Relative Paths in PHP?

PHP relativen Pfad einschließen: Fehler beim Einbinden von Dateien beheben

Sie haben zwei Dateien, test.php und connect.php, die sich im Ordner „/“ befinden. root/update/-Verzeichnis. connect.php versucht, config.php aus dem Verzeichnis /root/ einzubinden, indem es die Zeile include „../config.php“ verwendet. Dies führt jedoch zu Fehlern im Zusammenhang mit fehlenden Dateien.

Verstehen des Problems

Das Problem tritt auf, weil der in test.php festgelegte Include-Pfad (set_include_path(".: /root");) umfasst das aktuelle Verzeichnis (.), jedoch nicht das übergeordnete Verzeichnis (das /root/update/-Verzeichnis). Das bedeutet, dass connect.php, wenn es versucht, config.php mit dem relativen Pfad ../config.php einzuschließen, im Stammverzeichnis (/root/) danach sucht, wo es nicht existiert.

Problem lösen

Um dieses Problem zu beheben, haben Sie mehrere Möglichkeiten:

  • Verwenden __DIR__:

Sie können die Datei mit der Konstante __DIR__ einschließen, die den absoluten Pfad zum Verzeichnis der aktuellen Datei darstellt. Auf diese Weise können Sie auf die Konfigurationsdatei zugreifen, ohne den relativen Pfad angeben zu müssen:

include(dirname(__DIR__).'/config.php');
Nach dem Login kopieren
  • Legen Sie den Stammpfad fest:

Sie kann eine Root-Pfadkonstante definieren, um das Root-Verzeichnis für Datei-Includes anzugeben. Dadurch können Sie einen relativen Pfad aus diesem Stammverzeichnis verwenden, ohne den vollständigen Pfad anzugeben:

define('ROOT_PATH', dirname(__DIR__) . '/');
include(ROOT_PATH.'config.php');
Nach dem Login kopieren
  • Absolute Pfade verwenden:

While Sie haben erwähnt, dass die Verwendung absoluter Pfade keine Option ist. Wenn möglich, können Sie absolute Pfade verwenden, um die Datei einzuschließen direkt:

include('/root/config.php');
Nach dem Login kopieren

Fazit

Durch die Verwendung von __DIR__, die Definition eines Stammpfads oder die Verwendung absoluter Pfade können Sie das Problem der Dateieinbindung bei Verwendung relativer Pfade lösen innerhalb Ihrer PHP-Skripte.

Das obige ist der detaillierte Inhalt vonWie binde ich Dateien mit relativen Pfaden in PHP korrekt ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage