Voila, je me suis un peu creusé la tête pour trouver comment lister les dossiers, sous dossiers, sous sous dossiers, etc. Et j'ai trouvé: J'ai utilisé une fonction récurcive:
sous unix, il faut l'appeller qu'une seule fois:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 function listeLesDossiers($d) { $monDossier = opendir($d); $ch = $d.'/'; printf('%s<br />', $ch); while($tmp = readdir($monDossier)) { if($tmp != '..' && $tmp != '.' && is_dir($ch.$tmp)) listeLesDossiers($ch.$tmp); } return; }
Si on veut lister tout le système de fichier (déconseillé pour raison de
Code : Sélectionner tout - Visualiser dans une fenêtre à part listeLesDossiers('/Répertoire qu'un veut lister'); //ou
sécurité et de temps d'exécution)
sous windows dans une boucle cemme celle là:
Code : Sélectionner tout - Visualiser dans une fenêtre à part listeLesDossiers('');
J'espère que ca pourra aider. J'essayerai de mettre d'autres exemples de fonction récurcives si je suis confronté à ce cas de figure.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 for($lecteur = 'A'; $lecteur <= 'Z'; $lecteur++) { $chemin = $lecteur.':'; if(is_dir($chemin)) { listeLesDossiers($chemin); } }
Partager