Existem várias opções e formas de navegar em estruturas de diretórios no PHP. Iremos apresentar neste rápido artigo dica o DirectoryIterator, que é uma opção ao conjunto opendir()/readdir(), no entanto, baseado em Orientação à Objetos.
<?php $iterator = new DirectoryIterator("/caminho/para/diretorio"); foreach($iterator as $arquivo) { // diferente de .. ou . if(!$arquivo->isDot()) { // elemento atual é um arquivo if($arquivo->isFile()) { echo "Arquivo: $arquivo" . PHP_EOL; } // elemento atual é um diretório if($arquivo->isDir()) { echo "Diretório: $arquivo" . PHP_EOL; } } }