(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
pathinfo — Retourne des informations sur un chemin système
$path, int $flags = PATHINFO_ALL): array|string
pathinfo() retourne des informations sur le chemin
path, sous forme de chaine ou de tableau associatif, ceci
dépend du paramètre flags.
Note:
Pour plus d'informations sur la lecture du chemin courant, lisez la section sur les variables prédéfinies.
Note:
pathinfo() opère naivement sur la chaîne d'entrée, et n'est pas conscient des systèmes de fichiers actuel, ou des composants de chemins tel que "
..".
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().
pathLe chemin à analyser.
flags
Spécifie quel élément sera retourné. Vous pouvez passer l'une des constantes
PATHINFO_DIRNAME,
PATHINFO_BASENAME,
PATHINFO_EXTENSION et
PATHINFO_FILENAME.
Si flags n'est pas renseigné,
tous les éléments sont retournés.
Si flags 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
pathcontient plus d'une extension,PATHINFO_EXTENSIONretourne uniquement le dernier etPATHINFO_FILENAMEva supprimer uniquement le dernier également (voir le premier exemple ci-dessous).
Note:
Si
pathn'a pas d'extension, l'élémentextensionne sera pas retourné (voir le second exemple ci-après).
Note:
Si
basenamedu paramètrepathcommence par un point, les caractères suivants sont interprétés comme l'extension, et lefilenamesera vide (voir le troisième exemple ci-dessous).
Si flags est utilisé, cette fonction retournera
une chaîne de caractères contenant les éléments.
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";
?>
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']);
?>
Résultat de l'exemple ci-dessus est 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'));
?>
Résultat de l'exemple ci-dessus est similaire à :
Array
(
[dirname] => /some/path
[basename] => .test
[extension] => test
[filename] =>
)