Include dotfiles excluding . and .. special dirs with .[!.]*
<?php
$all_files = array_merge(glob('.[!.]*'), glob('*'));
// or
$all_files = glob('{.[!.],}*', GLOB_BRACE);
?>(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
glob — Recherche des chemins qui vérifient un masque
   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.
  
   Le comportement sur les systèmes Unix et macOS est déterminé par
   l'implémentation de glob() du système. Sous Windows, une implémentation
   conforme à la définition POSIX 1003.2 de glob() est utilisée, avec
   une extension pour gérer la convention [!...] permettant
   de nier une plage.
  
pattern
       Le masque. Aucun remplacement de tilde
       (~) ou de paramètre n'est fait.
      
Caractères spéciaux :
* - Associe zéro ou plus de caractères.
         
        ? - Associe exactement un caractère (n'importe
          quel caractère).
         
        [...] - Associe un caractère d'un ensemble de
          caractères. Si le premier caractère est !,
          associe n'importe quel caractères pas dans cet ensemble.
         
        {a,b,c} - Associe une chaîne parmi un groupe de
          chaînes séparées par des virgules lorsque le drapeau 
          GLOB_BRACE est utilisé.
         
        \ - Échappe le caractère suivant, sauf quand le
          drapeau GLOB_NOESCAPE est utilisé.
         
        flags
       N'importe laquelle des constantes GLOB_*.
      
   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.
   Sauf si GLOB_NOSORT a été utilisé, les noms seront triés alphanumériquement.
  
Exemple #1 Un moyen pratique pour remplacer opendir() par glob()
<?php
foreach (glob("*.txt") as $filename) {
    echo "$filename occupe " . filesize($filename) . "\n";
}
?>Résultat de l'exemple ci-dessus est similaire à :
funclist.txt occupe 44686 funcsummary.txt occupe 267625 quickref.txt occupe 137820
Exemple #2 Exemple avec un motif plus complexe
<?php
foreach (glob("path/*/*.{txt,md}", \GLOB_BRACE) as $filename) {
    echo "$filename\n";
}
?>Résultat de l'exemple ci-dessus est similaire à :
path/docs/mailinglist-rules.md path/docs/README.md path/docs/release-process.md path/pear/install-pear.txt path/Zend/README.md
Note: Cette fonction ne fonctionne pas avec les fichiers distants, car le fichier examiné doit être accessible sur le système de fichiers du serveur.
Note: Cette fonction n'est pas disponible sur quelques systèmes (e.g. vieux Sun OS).
