(PHP 4 >= 4.0.3, PHP 5, PHP 7)
pathinfo — Liefert Informationen über einen Dateipfad
$path
[, int $options
= PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME
] )
pathinfo() gibt Informationen über einen Dateipfad
(path
) zurück: entweder als assoziatives Array
oder als String, abhängig vom options
-Parameter.
path
Der zu analysierende Dateipfad.
options
Falls angegeben, wird nur dieses eine Element zurückgegeben.
Mögliche Werte:
PATHINFO_DIRNAME
,
PATHINFO_BASENAME
,
PATHINFO_EXTENSION
oder
PATHINFO_FILENAME
.
Falls options
nicht angegeben wird, werden
alle verfügbaren Elemente zurückgegeben.
Falls der options
-Parameter nicht angegeben wird,
wird ein assoziatives Array mit den folgenden Elementen
zurückgegeben: dirname, basename,
extension (falls vorhanden) und
filename.
Hinweis:
Wenn der
path
mehr als eine Erweiterung hat, gibtPATHINFO_EXTENSION
nur die letzte zurück, undPATHINFO_FILENAME
entfernt nur die letzte. (Siehe auch das erste Beispiel weiter unten.)
Hinweis:
Falls
path
keine Erweiterung hat, wird das extension-Element nicht zurückgegeben (siehe das zweite Beispiel unten).
Falls options
genutzt wird, gibt diese Funktion
einen String mit dem gewünschten Element zurück.
Version | Beschreibung |
---|---|
5.2.0 |
Die PATHINFO_FILENAME -Konstante wurde hinzugefügt.
|
Beispiel #1 pathinfo()-Beispiel
<?php
$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');
echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // seit PHP 5.2.0
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
/www/htdocs/inc lib.inc.php php lib.inc
Beispiel #2 pathinfo()-Beispiel für den Unterschied zwischen einer leeren und keiner Erweiterung
<?php
$path_parts = pathinfo('/path/emptyextension.');
var_dump($path_parts['extension']);
$path_parts = pathinfo('/path/noextension');
var_dump($path_parts['extension']);
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
string(0) "" Notice: Undefined index: extension in /test.php on line 6 NULL
Hinweis:
Informationen über das Wiederauffinden der aktuellen Pfadinformation finden Sie unter Vordefinierte Variablen.
Hinweis:
pathinfo() berücksichtigt die locale-Einstellung. Um einen Pfad, der Multibyte-Zeichen enthält, korrekt parsen zu können, muss die entsprechende locale mit der setlocale()-Funktion gesetzt werden.