Bonjour
je débute en php et je souhaiterai faire une fonction qui me permette de lister de manière récursive le contenu d'un répertoire.
C'est à dire, que je voudrais afficher :
./index.php
./www/
./www/fichier1.php
./www/fichier2.php
./www/images/
./www/images/image1.png
./www/images/image2.png
etc
j'ai fait pour cela une fonction mais j'ai une erreur
voici le code de ma page :
Merci à vous de m'aider
PS : je précise que je ne peux pas utiliser "exec" qui permet d'executer ls ou autre ...
Modifié par Poich (03 Aug 2005 - 14:38)
je débute en php et je souhaiterai faire une fonction qui me permette de lister de manière récursive le contenu d'un répertoire.
C'est à dire, que je voudrais afficher :
./index.php
./www/
./www/fichier1.php
./www/fichier2.php
./www/images/
./www/images/image1.png
./www/images/image2.png
etc
j'ai fait pour cela une fonction mais j'ai une erreur

voici le code de ma page :
<?php
$files = getPath(".");
foreach($files as $i)
{
echo "$i<br />";
}
function getPath($dir)
{
$files = array();
$handle = opendir($dir);
// Parcours des fichiers et dossiers du répertoire courant
while($file = readdir($handle)) {
if($file != "." && $file != "..")
{
if(is_dir($file))
{
$files[] = "<b>".$dir."/".$file."/</b>";
$newDir = chdir($file);
$rep = getPath($file);
foreach($rep as $i)
{
$files[] = "".$dir."/".$i;
}
}
else
{
$files[] = "".$dir."/".$file;
}
}
}
// Fermeture du répertoire courant
closedir($handle);
return $files;
}
?>
Merci à vous de m'aider
PS : je précise que je ne peux pas utiliser "exec" qui permet d'executer ls ou autre ...
Modifié par Poich (03 Aug 2005 - 14:38)