Lister un répertoire

Résolu/Fermé
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 - 30 janv. 2010 à 17:28
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 - 30 janv. 2010 à 23:01
Bonjour,
Je ne sais pas comment afficher récursivement les dossiers. J'ai la petite fonction qui va bien mais ça ne m'affiche que les fichiers et dossiers qui se trouve dans ce répertroire
Moi je voudrais pouvoir afficher les sous répertoire et fichier, une arborescence en fait.
J'ai déjà vu des centaines de fonctions sur le net mais je n'arrive pas à les mettre en place, alors si vous pouvez m'aider.
Merci beaucoup de votre aide

[code]
<?php
//Ouvre un répertoire
$mon_repertoire = opendir("partition_de_musique");
//Lit successivement toutes les entrées du répertoire
while ($entree = readdir ($mon_repertoire))
{
//Enléve le . et les .. en début de liste
if ($entree != "." && $entree != "..")
{
echo "$entree<br/>";
}
}
//Ferme le répertoire
closedir($mon_repertoire);
?>
[/code]

3 réponses

avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 503
30 janv. 2010 à 17:57
<?php
function listerRepertoire($repertoire) {
	$mon_repertoire = opendir($repertoire);
	
	while($entree = readdir($mon_repertoire)) {
		if($entree != "." && $entree != "..") {
			if(is_dir($entree))
				listerRepertoire($repertoire.'/'.$entree);
			else
				echo $entree.'<br/>';
			}
		}
	}
	closedir($mon_repertoire);
}
listerRepertoire('partition_de_musique');
?>
Je n'ai pas essayé.
0
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 6
30 janv. 2010 à 21:56
Bonjour et merci pour ton aide.
Juste une petite modif et ça marche super.
re voici le code
Un petit détail les 2 points avant les fichiers sont toujours présents?
Y a t-il un autre moyen de les enlever?
Merci

[code]
<?php
// FONCTION PERMETTANT DE SCANNER UN DOSSIER RÉCURSIVEMENT ET D'EN CRÉER UN TABLEAU
function listerRepertoire($repertoire){

$mon_repertoire = opendir($repertoire); //Ouvre un répertoire
while($entree = readdir($mon_repertoire)) { //Lit successivement toutes les entrées du répertoire
if(is_dir($repertoire.'/'.$entree) && $entree != '.' && $entree != '..') { //Enléve le . et les .. en début de liste
echo '<ul>'.$repertoire;
listerRepertoire($repertoire.'/'.$entree);
echo '</ul>';
}
else {
echo "$entree<br/>";
}
}
closedir($mon_repertoire); //Ferme le répertoire
}
listerRepertoire('partition de musique'); //Le répertoire à scanner
?>
/code
0
labourette Messages postés 657 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 24 juillet 2016 6
30 janv. 2010 à 23:01
Re bonjour

Merci avec ton aide je suis parvenu à ce que je voulais
Merci
0