realpath
(PHP 4, PHP 5)
realpath — Löst einen Pfad in einen absoluten und eindeutigen auf
Beschreibung
$path
)
realpath() löst alle symbolischen Verweise,
'/./', '/../' und mehrere aufeinanderfolgende '/' Zeichen,
die in path enthalten sind, auf und gibt
den so entstehenden absoluten Pfad zurück.
Parameter-Liste
-
path -
Der Pfad, der aufgelöst werden soll.
Hinweis:
Der Pfad muss angegeben werden, kann allerdings auch ein leerer String oder
NULLsein, in diesem Fall wird dann das aktuelle Verzeichnis benutzt.
Rückgabewerte
Gibt bei Erfolg den eindeutigen und absoluten Pfadnamen zurück. Dieser wird keine symbolischen Links, '/./' oder '/../' mehr enthalten.
realpath() gibt FALSE zurück, wenn ein Fehler auftritt,
beispielsweise wenn die Datei nicht existiert.
Hinweis:
Das ausführende Script muss alle Verzeichnisse im Pfad öffnen können (auf unixoiden Systemen wäre das das "execute" Recht). Ist dies nicht der Fall, gibt realpath()
FALSEzurück.
Hinweis: Weil PHPs Integer Typ vorzeichenbehaftet ist und viele Platformen 32bit Integer verweden, können einige Dateisystem-Funktionen für Dateien größer als 2GB unerwartete Ergebnisse liefern.
Changelog
| Version | Beschreibung |
|---|---|
| 5.3.0 |
Vor dieser Version schlug realpath() auf BSD Systemen
nicht fehl, wenn nur die letzte path Komponente
nicht existierte. Jetzt schlägt realpath() auch in diesem
Fall fehl.
|
| 5.2.1 |
Vor dieser Version gab realpath() FALSE zurück,
wenn path eine leere Zeichenkette oder NULL ist.
|
Beispiele
Beispiel #1 realpath()
<?php
chdir('/var/www/');
echo realpath('./../../etc/passwd');
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
/etc/passwd
Beispiel #2 realpath() auf Windows
Unter Windows wandelt realpath() Unix-artige Pfade in gültige Windows-Pfade um:
<?php
echo realpath('/windows/system32');
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
C:\WINDOWS\System32
Siehe auch
- basename() - Gibt letzten Namensteil einer Pfadangabe zurück
- dirname() - Beschreibung
- pathinfo() - Liefert Informationen über einen Dateipfad