Salut,
J'ai un petit souci...
Pour la gestion d'albums photo, je scanne avec iterator (récursivement) les répertoires du dossier ../album/ avec la fonction suivante.
L'objectif est d'afficher dans une liste déroulante les répertoires disponibles pour sélectionner dans une liste l'album à afficher dans un blog.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public function _site_dir_dir_list($path) { if(file_exists($path)) { $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::CHILD_FIRST); $dir = array(); while($iterator->valid()) { if(!$iterator->isDot()) { if($iterator->isDir()) { $x = explode($path, $iterator->getPathname(), 2); $dir[$x[1]] = $x[1]; } } $iterator->next(); } return $dir; } }
J'utilise une arborescence du type :
Le souci, c'est que ma fonction me propose :/rep1/ |---img.jpg |---img2.jpg /rep2/ |---/sousrep/img.jpg |---/sousrep/img2.jpg Etc...
Or, je ne voudrais dans ma liste que les répertoires qui contiennent des fichiers (pas d'autres répertoires tels que rep2 qui ne contient pas de fichiers).Rep1 Rep2 Rep2/sousrep Rep2/sousrep
Autrement dit, je cherche à raccourcir ma liste pour ne pas visualiser les répertoires contenant des sous répertoires et qui n'ont pas d'image stockées directement dedans.
Savez vous comment je peux vérifier ça à partir de ma fonction ?
Je sèche depuis un bon moment. Merci de votre aide.
Partager