Fonctions sur les systèmes de fichiers
PHP Manual

glob

(PHP 4 >= 4.3.0, PHP 5)

globRecherche des chemins qui vérifient un masque

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.

Liste de paramètres

pattern

Le masque. Aucun remplacement de tilde (~) ou de paramètre n'est fait.

flags

Les drapeaux valides sont :

  • GLOB_MARK : Ajoute 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étacaractère d'un antislash
  • GLOB_BRACE : Remplace {a,b,c} par 'a', 'b' ou 'c'
  • GLOB_ONLYDIR : Ne retourne que les dossiers qui vérifient le masque
  • GLOB_ERR : Stop lors d'une erreur (comme des dossiers non lisibles), par défaut, les erreurs sont ignorées.

Valeurs de retour

Retourne un tableau contenant les fichiers et dossiers correspondant au masque, un tableau vide s'il n'y a aucune correspondance, ou FALSE si une erreur survient.

Note: Sous certains systèmes, il est impossible de distinguer un masque vide d'une erreur.

Historique

Version Description
5.1.0 GLOB_ERR a été ajouté
4.3.3 GLOB_ONLYDIR devient disponible sous Windows ainsi que sur les autres systèmes n'utilisant pas la bibliothèque GNU C.

Exemples

Exemple #1 Un moyen pratique pour remplacer opendir() par glob()

<?php
foreach (glob("*.txt") as $filename) {
    echo 
"$filename occupe " filesize($filename) . "\n";
}
?>

L'exemple ci-dessus va afficher quelque chose de similaire à :

funclist.txt size 44686
funcsummary.txt size 267625
quickref.txt size 137820

Notes

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).

Note: Le drapeau GLOB_BRACE n'est pas disponible sur quelques systèmes non GNU, comme Solaris.

Voir aussi


Fonctions sur les systèmes de fichiers
PHP Manual