In PHP können wir die Funktion is_link () verwenden, um zu überprüfen, ob ein bestimmter Pfad ein Symlink ist. Ein symbolischer Link ist eine spezielle Dateiart, die auf eine andere Datei oder ein anderes Verzeichnis verweist. Die Funktion is_link () hilft uns nicht nur, festzustellen, ob die Datei ein symbolischer Link ist, sondern ermöglicht es uns auch zu überprüfen, ob der Pfad gültig ist.
Die Funktion is_link () wird verwendet, um festzustellen, ob der angegebene Pfad eine symbolische Verbindung ist. Rückgabe true , wenn der Pfad ein symbolischer Link ist und der Link existiert, andernfalls geben Sie false zurück.
$path = '/path/to/symlink';
if (is_link($path)) {
echo "Dies ist eine symbolische Verbindung。\n";
} else {
echo "Dies ist kein symbolischer Glied。\n";
}
Das einzige Argument für die Funktion is_link () ist $ path , die den zu überprüfen zu überprüfenden Dateipfad darstellt. Dieser Weg kann ein absoluter Weg oder ein relativer Weg sein.
Absolutes Pfad : wie /var/www/html/symlink .
Relativer Pfad : wie Symlink , die auf die Datei im aktuellen Arbeitsverzeichnis hinweist.
Um festzustellen, ob ein symbolischer Link gültig ist, müssen wir sicherstellen, dass die zu existierende Zieldatei. Wenn die Zieldatei, auf die der symbolische Link nicht vorhanden ist, nicht vorhanden ist, gibt is_link () true zurück, dies bedeutet jedoch nicht, dass der Link gültig ist.
Wir können is_link () und file_exists () kombinieren, um zu überprüfen, ob der symbolische Link gültig ist. Die Funktion "Datei_Exists () wird verwendet, um zu überprüfen, ob eine Datei oder ein Verzeichnis vorliegt.
$path = '/path/to/symlink';
if (is_link($path)) {
echo "Dies ist eine symbolische Verbindung。\n";
if (file_exists(readlink($path))) {
echo "Die Datei, auf die der symbolische Link hingewiesen wird。\n";
} else {
echo "Die Datei, auf die der symbolische Link hingewiesen wird。\n";
}
} else {
echo "Dies ist kein symbolischer Glied。\n";
}
Im obigen Code verwenden wir zunächst is_link () , um zu überprüfen, ob der Pfad ein symbolischer Link ist. Wenn es sich um einen symbolischen Link handelt, verwenden wir Readlink () , um den Zieldateipfad zum symbolischen Link zu erhalten, und verwenden Datei_Exists (), um zu überprüfen, ob die Zieldatei vorliegt.
Mit der Funktion readlink () können wir den Dateipfad erhalten, zu dem die symbolischen Verknüpfungspunkte. Dies ist sehr nützlich, um die Wirksamkeit symbolischer Verbindungen zu debugieren und zu überprüfen.
$path = '/path/to/symlink';
if (is_link($path)) {
$target = readlink($path);
echo "Die Datei, auf die der symbolische Link hingewiesen wird, lautet: $target\n";
} else {
echo "Dies ist kein symbolischer Glied。\n";
}
Wenn der Pfad eine URL ist, kein lokaler Dateipfad, können wir prüfen, ob es sich um eine gültige URL über die Funktion filter_var () handelt. Wenn wir beispielsweise eine Datei haben, auf die ein URL -Link zeigt, können wir auf diese Weise überprüfen: