Description
array
glob ( string pattern [, int flags] )
glob() recherche tous les chemins qui vérifient
le masque pattern, en suivant les règles utilisées par
la fonction glob() de la libc, qui sont les mêmes que celles
utilisées par le Shell en général. Aucun remplacement de tilde
(~) ou de paramètre n'est fait.
glob() retourne un tableau contenant les fichiers et les dossiers
trouvés, un tableau vide si aucun fichier/dossier n'est trouvé ou FALSE en cas d'erreur.
Valeurs autorisées pour flags :
GLOB_MARKAjoute un slash final à chaque élément retourné
GLOB_NOSORT : Retourne les fichiers tant l'ordre d'apparence (pas de tri)
GLOB_NOCHECK : Retourne le masque de recherche si aucun fichier n'a été trouvé
GLOB_NOESCAPE : Ne protège aucun méta-caractère d'un anti-slash
GLOB_BRACE : Remplace {a,b,c} par 'a', 'b' ou 'c'
GLOB_ONLYDIR : Ne retourne que les dossiers qui vérifient le masque
Note :
Avant PHP 4.3.3 GLOB_ONLYDIR
n'était pas
disponible sur Windows et les systèmes qui n'utilisent pas la bibliothèque
GNU C.
GLOB_ERR : Stop lors d'une erreur (comme des dossiers non lisibles),
par défaut, les erreurs sont ignorées. Ajouté en PHP 5.1.
Exemple 1.
Un moyen pratique pour remplacer opendir()
par glob()
<?php $files = glob("*.txt"); foreach ($files as $filename) { echo "$filename occupe " . filesize($filename) . " octets\n"; } ?>
|
L'exemple ci-dessus va afficher quelque chose de similaire à : funclist.txt occupe 44686 octets
funcsummary.txt occupe 267625 octets
quickref.txt occupe 137820 octets |
|
Note : Cette fonction ne fonctionne pas
avec les fichiers distants,
car le fichier utilisé doit être accessible sur le système de fichiers
local.
Note :
Cette fonction n'est pas disponible sur quelques systèmes (e.g. vieux Sun OS).
Voir aussi
opendir(),
readdir(),
closedir() et
fnmatch().