(PHP 4, PHP 5)
dirname —
$path
)Aus einer übergebenen Zeichenkette, die den Pfad zu einer Datei oder einem Verzeichnis enthält, gibt diese Funktion den Pfad des übergeordneten Verzeichnisses zurück.
path
Ein Pfad.
Unter Windows wird sowohl der Slash (/) als auch der Backslash (\) als Trennzeichen bei Pfadangaben benutzt. Unter anderen Betriebssystemen hingegen nur der Slash (/).
Gibt den Pfad des übergeordneten Verzeichnisses zurück. Sind keine
Pfadtrenner in path
, wird ein Punkt
('.') zurückgegeben, das aktuelle Verzeichnis
kennzeichnend. Ansonsten ist die zurückgegebene Zeichenkette der
path
mit dem abschließenden
/component entfernt.
Version | Beschreibung |
---|---|
5.0.0 | dirname() ist nun "binary safe". |
4.0.3 | dirname() wurde korrigiert um POSIX konform zu sein. |
Beispiel #1 dirname() Beispiel
<?php
echo "1) " . dirname("/etc/passwd") . PHP_EOL; // 1) /etc
echo "2) " . dirname("/etc/") . PHP_EOL; // 2) / (or \ on Windows)
echo "3) " . dirname("."); // 3) .
?>
Hinweis:
dirname() arbeitet nur mit der Eingabe Zeichenkette und beachtet nicht das eigentliche Dateisystem oder Pfadbestandteile wie etwa "..".
Hinweis:
dirname() beachtet die Spracheinstellungen (locale); soll sie daher die korrekte Namensbasis in Pfaden mit einem Mehrbytezeichensatz erkennen, muss die passende Spracheinstellung (locale) mit der setlocale() Funktion gesetzt werden.
Hinweis:
Seit PHP 4.3.0 werden sie von dirname() oft einen Schrägstrich oder einen Punkt zurückbekommen, wo die frühere Funktionalität eine leere Zeichenkette ergeben hätte.
Prüfen sie das folgende Beispiel für die Änderung:
<?php
//vor PHP 4.3.0
dirname('c:/'); // ergab '.'
//nach PHP 4.3.0
dirname('c:/x'); // ergibt 'c:\'
dirname('c:/Temp/x'); // ergibt 'c:/Temp'
dirname('/x'); // ergibt '\'
?>