0
I have a routine to read and display files and directories in PHP.
My problem is to read directories within subdirectories.
<?php
// linux
$dir = new DirectoryIterator( '/www/sistema/fotos/' );
// windows
//$dir = new DirectoryIterator( 'c:/xampp/htdocs/sistema/fotos/' );
// array contendo os diretórios permitidos
$diretoriosPermitidos = array("albuns");
foreach($dir as $file)
{
// verifica se $file é diferente de '.' ou '..'
if (!$file->isDot())
{
// listando somente os diretórios
if ( $file->isDir() )
{
// atribui o nome do diretório a variável
$dirName = $file->getFilename();
// listando somente o diretório permitido
if( in_array($dirName, $diretoriosPermitidos)) {
// subdiretórios
$caminho = $file->getPathname();
// chamada da função de recursividade
recursivo($caminho, $dirName);
}
}
// listando somente os arquivos do diretório
if ( $file->isFile() )
{
// atribui o nome do arquivo a variável
$fileName = $file->getFilename();
//
echo "fotos: ".$fileName."<br>";
}
}
}
function recursivo( $caminho, $dirName ){
global $dirName;
$DI = new DirectoryIterator( $caminho );
foreach ($DI as $file){
if (!$file->isDot())
{
if ( $file->isFile() )
{
//
$fileName = $file->getFilename();
//
echo $dirName.": ".$fileName."<br>";
}
}
}
}
?>
I didn’t even try to read the code, because I didn’t really understand what the "problem" would be, but I already tried to use the
RecursiveDirectoryIterator
? And do you really need to use these iterators for that?– Woss
I will read the documentation of Recursivedirectoryiterator and come back to say if it worked. Thank you!
– Rodrigo