Finden den Root-Verzeichnispfad in PHP

Subodh Poudel 21 März 2022
  1. Verwenden Sie die vordefinierte Konstante __DIR__, um den Pfad des Verzeichnisses einer Datei in PHP zu finden
  2. Verwenden Sie die Funktion dirname(), um den Pfad des Root-Verzeichnisses eines Projekts in PHP zu finden
  3. Verwenden Sie $_SERVER['DOCUMENT_ROOT'], um das Dokumenten-Root-Verzeichnis einer Datei in PHP zu finden
Finden den Root-Verzeichnispfad in PHP

Wir werden verschiedene Methoden vorstellen, um den Pfad des Root-Verzeichnisses eines PHP-Projekts zu finden.

Verwenden Sie die vordefinierte Konstante __DIR__, um den Pfad des Verzeichnisses einer Datei in PHP zu finden

In PHP gibt es vordefinierte Konstanten, mit denen verschiedene Funktionalitäten erreicht werden können. __DIR__ ist eine magische Konstante, die den vollständigen Dateipfad der aktuellen Datei aus dem Root-Verzeichnis zurückgibt. Dies bedeutet, dass das Verzeichnis der Datei zurückgegeben wird. dirname(__FILE__) kann auch für den gleichen Zweck verwendet werden.

Angenommen, wir haben einen Ordner project, der das Stammverzeichnis des Projekts ist. Der Ordner project hat folgenden Dateipfad /var/www/HTML/project. Im Ordner project haben wir die Datei index.php und einen weiteren Ordner master. Im Ordner master befinden sich zwei PHP-Dateien: login.php und register.php.

project
├── index.php
└── master
 ├── login.php
 └── register.php

Angenommen, wir arbeiten gerade an login.php. In einer solchen Dateistruktur können wir den Pfad des Verzeichnisses mit der Konstante __DIR__ in der Datei login.php ermitteln. Wir können die Funktion echo verwenden, um die Konstante zu drucken.

Beispielcode:

<?php
echo __DIR__;
?>

Ausgabe:

/var/www/html/project/master

Verwenden Sie die Funktion dirname(), um den Pfad des Root-Verzeichnisses eines Projekts in PHP zu finden

Die Funktion dirname(__FILE__) ähnelt __DIR__. Mit dieser Funktion können wir den Pfad des Verzeichnisses einer Datei ermitteln. Wir können auch mit der Funktion dirname() in die oberen Ebenen des Dateipfads wechseln. Der erste Parameter der Funktion ist der Pfad der Datei, der durch die Konstante __FILE__ gekennzeichnet ist. Der zweite Parameter ist eine ganze Zahl, die Level genannt wird. Wir können die Ebenen festlegen, um die Funktion anzuweisen, im Dateipfad nach oben zu nivellieren. Der Standardwert der Ebene ist 1. Wenn wir die Ebene erhöhen, wird die Funktion den Dateipfad um eine Ebene höher holen. So können wir diese Funktion verwenden, um den genauen Dateipfad des Root-Verzeichnisses des Projekts in PHP zu finden.

Als erste Methode können wir beispielsweise die Dateistruktur betrachten. Ausgehend von der Datei login.php können wir die Funktion dirname() mit Level 2 und der Konstante __FILE__ als Parameter verwenden. Dann können wir den genauen Dateipfad des Arbeitsverzeichnisses erhalten. Somit können wir die Ebenen nach unserer Wahl ändern, um uns im Dateipfad nach oben und unten zu bewegen. Auf diese Weise können wir den Pfad des Root-Verzeichnisses des Projekts in PHP finden.

Beispielcode:

<?php
echo dirname(__FILE__,2);
?>

Ausgabe:

/var/www/html/project

Verwenden Sie $_SERVER['DOCUMENT_ROOT'], um das Dokumenten-Root-Verzeichnis einer Datei in PHP zu finden

Wir können das Array $_SERVER[] mit den Indizes DOCUMENT_ROOT verwenden, um das Dokumenten-Root-Verzeichnis des gerade ausgeführten Skripts zu finden. Es wird den vollständigen Pfad des Dokumentstammverzeichnisses zurückgeben. Sie ist in der Konfigurationsdatei des Servers definiert. Für die obige Dateistruktur können wir den $_SERVER['DOCUMENT_ROOT'] mit der Funktion echo drucken, um das Dokumenten-Root-Verzeichnis der Datei login.php zu finden.

Wie in der Ausgabe unten gezeigt, haben wir herausgefunden, dass der Pfad html das Dokumenten-Root-Verzeichnis der Datei login.php ist. Wir können auch den Dateipfad des Root-Verzeichnisses sehen.

Beispielcode:

<?php
echo $_SERVER['DOCUMENT_ROOT'];
?>

Ausgabe:

/var/www/html
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

Verwandter Artikel - PHP File