Die Funktion get_include_path () wird verwendet, um den aktuellen Include -Pfad zu erhalten. Es gibt eine dicker getrennte Pfadliste zurück, die PHP in der Reihenfolge dieser Pfadliste nach Dateien sucht. Wenn Sie Funktionen wie einbezogen oder verlangt verwenden, sucht PHP nacheinander nach Zieldateien in diesen Pfaden.
<?php
// Holen Sie sich den aktuellen Pfad enthalten
$current_path = get_include_path();
echo "Der aktuelle Einschlussweg ist: " . $current_path;
?>
Standardmäßig enthält PHP das aktuelle Verzeichnis ( . ) Und den Standardbibliotheksweg von PHP (normalerweise den PHP -Ordner im PHP -Installationsverzeichnis).
Die Funktion set_include_path () wird verwendet, um den Pfad von PHP einzuschließen oder zu aktualisieren. Mit dieser Funktion können Sie bestimmte Pfade hinzufügen, ändern oder löschen, damit PHP diese Pfade berücksichtigt, wenn Sie nach Dateien suchen.
<?php
// Stellen Sie einen neuen Pfad ein
set_include_path('/var/www/html/includes');
// Holen Sie sich den aktuellen Pfad enthalten
$current_path = get_include_path();
echo "Der neue Include -Pfad ist: " . $current_path;
?>
Verwenden Sie set_include_path () , um den enthaltenen Pfad vorübergehend zu ändern, wobei die nachfolgenden Dateisuchvorgänge beeinflusst werden.
Die rationale Verwendung von get_include_path () und set_include_path () ermöglicht es uns, Datei flexibel zu verwalten, die Pfade in PHP -Projekten enthalten. Eine gängige Praxis besteht darin, unterschiedliche Wege im Programm nach unterschiedlichen Bedürfnissen festzulegen.
Angenommen, wir haben ein PHP -Projekt, das mehrere Submodules und Bibliotheksdateien enthält. Wir können den aktuellen Pfad durch Get_include_path () erhalten und dann set_include_path () verwenden, um den neuen Pfad vor oder nach dem aktuellen Pfad hinzuzufügen.
<?php
// Holen Sie sich den aktuell enthaltenen Pfad
$current_path = get_include_path();
echo "Derzeit enthaltene Pfad: " . $current_path . "<br>";
// Nach dem Hinzufügen eines neuen Pfades zum aktuellen Pfad
$new_path = $current_path . PATH_SEPARATOR . '/var/www/html/libraries';
set_include_path($new_path);
// Überprüfen Sie den neuen Pfad einschließen
echo "Aktualisiert inklusive Pfad: " . get_include_path();
?>
In diesem Beispiel erhalten wir zuerst den aktuellen Pfad über get_include_path () und verwenden dann set_include_path (), um den neuen Pfad an den ursprünglichen Pfad anzuhängen. Path_separator ist eine Konstante, mit der die Pfade in verschiedenen Betriebssystemen korrekt trennen wird. Linux und MacOS verwenden Colons : Windows verwendet Semikolonen ; .
In großflächigen Projekten ist es besonders wichtig, die Einschlusswege gut zu verwalten. Im Folgenden finden Sie einige gemeinsame Anwendungsszenarien:
Wenn wir den automatischen Lademechanismus von PHP (wie den PSR-4-Standard) verwenden, müssen wir möglicherweise mehrere Verzeichnisse zum Pfad hinzufügen. Durch rationales Festlegen des Einschlussweges können Sie sicherstellen, dass PHP alle erforderlichen Klassendateien finden kann.
<?php
// Richten Sie das automatische Ladeverzeichnis ein
set_include_path('/var/www/html/classes' . PATH_SEPARATOR . get_include_path());
// Laden Sie die Klasse automatisch laden
spl_autoload_register(function ($class) {
include $class . '.php';
});
// Automatische Belastung testen
$obj = new SomeClass();
?>
Wenn Sie ein System mit mehreren Modulen entwickeln, können Sie den Pfad jedes Moduls zum Pfad hinzufügen, damit Dateien zwischen verschiedenen Modulen unabhängig voneinander und korrekt gefunden werden können.
<?php
// Setzen Sie die Pfade auf mehrere Module
set_include_path('/var/www/html/module1' . PATH_SEPARATOR . '/var/www/html/module2' . PATH_SEPARATOR . get_include_path());
// Module einführen1Dateien
include 'module1/file.php';
// Module einführen2Dateien
include 'module2/file.php';
?>