Si vous voulez lister le contenu du répertoire de manière récursive, et afficher tous les sous-dossiers et leurs contenus, utilisez la fonction suivante :
<?php
error_reporting(E_ALL);
ini_set("display_errors", 0);
function getDirrecurse($path = '.', $level = 0)
{
$ignore = array('cgi-bin', '.', '..');
$dir = @opendir($path);
while(false !== ($file = readdir($dir)))
{
if(!in_array($file, $ignore))
{
$spaces = str_repeat(' ', ($level*4));
if(is_dir("$path/$file"))
{
echo "<strong>$spaces $file</strong><br />";
getDirrecurse( "$path/$file", ($level+1));
}
else
{
echo "$spaces $file<br />";
}
}
}
closedir($dir);
}
getDirrecurse();
?>
Prêtez une attention particulière à la ligne suivante :
$ignore = array('cgi-bin', '.', '..');
Ajoutez y éventuellement des noms de répertoires qui devraient être exclus. Par ailleurs $spaces
et $level
ne sont utilisés que pour gérer l'affichage. Vous pouvez les shunter si nécessaire.