(PHP 4 >= 4.0.3, PHP 5, PHP 7)
pathinfo — Retourne des informations sur un chemin système
$path
[, int $options
= PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME
] )
pathinfo() retourne des informations sur le chemin
path
, sous forme de chaine ou de tableau associatif, ceci
dépend du paramètre options
.
path
Le chemin à analyser.
options
Spécifie quel élément sera retourné. Vous pouvez associer les constantes
PATHINFO_DIRNAME
,
PATHINFO_BASENAME
,
PATHINFO_EXTENSION
et
PATHINFO_FILENAME
.
Si options
n'est pas renseigné,
tous les éléments sont retournés.
Si options
n'est pas utilisé, cette fonction retournera
un tableau associatif contenant les éléments suivants :
dirname, basename,
extension (s'il y en a), et filename.
Note:
Si
path
contient plus d'une extension,PATHINFO_EXTENSION
retourne uniquement le dernier etPATHINFO_FILENAME
va supprimer uniquement le dernier également (voir le premier exemple ci-dessous).
Note:
Si
path
n'a pas d'extension, l'élément extension ne sera pas retourné (voir le second exemple ci-après).
Note:
Si basename du paramètre
path
commence par un point, les caractères suivants sont interprétés comme l' extension, et le filename sera vide (voir le troisième exemple ci-dessous).
Si options
est utilisé, cette fonction retournera
une chaîne de caractères contenant les éléments.
Version | Description |
---|---|
5.2.0 |
La constante PATHINFO_FILENAME a été ajoutée.
|
Exemple #1 Exemple avec pathinfo()
<?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"; // depuis PHP 5.2.0
?>
L'exemple ci-dessus va afficher :
/www/htdocs/inc lib.inc.php php lib.inc
Exemple #2 Exemple pathinfo() sans extension
<?php
$path_parts = pathinfo('/path/emptyextension.');
var_dump($path_parts['extension']);
$path_parts = pathinfo('/path/noextension');
var_dump($path_parts['extension']);
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
string(0) "" Notice: Undefined index: extension in test.php on line 6 NULL
Exemple #3 Exemple avec pathinfo()
<?php
print_r(pathinfo('/some/path/.test'));
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Array ( [dirname] => /some/path [basename] => .test [extension] => test [filename] => )
Note:
Pour plus d'informations sur la lecture du chemin courant, lisez la section sur les variables prédéfinies.
Note:
La fonction pathinfo() est sensible à la configuration locale, aussi, si vous voulez qu'elle analyse correctement un chemin contenant les caractères sur plusieurs octets, la locale correspondante doit être définie en utilisant la fonction setlocale().