PHP 5 - Trabalhando com Arquivos e Diretórios com classe

Uma das features mais legais do PHP 5 são os chamados Iterators, tem pra tudo, array, diretórios, XM … dando uma olhada na página do manual, você pode ter uma listagem completa, inclusive com exemplos de uso. Futuramente, pretendo falar sobre todos, mas a bola da vez é o DirectoryInterator.

O DirectoryIterator, é obviamente, para trabalhar com diretórios e arquivos. Com ele, você pode facilmente - e obviamente, orientado a objetos - trabalhar com o conteúdo de um diretório.

Um exemplo de uso: <?php // diretório atual do script $strDiretorio = DIR;

// instancio a classe informando o diretório $objDiretorio = new DirectoryIterator($strDiretorio);

// percorro o conteúdo do diretório foreach($objDiretorio as $objDiretorioConteudo) {     echo $objDiretorioConteudo->getPathname() . PHP_EOL; } ?>

Abaixo, listo alguns métodos que você pode usar no $objDiretorioConteudo do exemplo acima:

Pegar a data de modificação: getMTime() Pegar a data de criação: getCTime() Verficiar se é um diretório: isDir() Verificar se é um arquivo: isFile() Verificar se é um arquivo oculto (começa com ponto, no Linux): isDot() Verificar se é um link: isLink() Verificar as permissões: getPerms() Recuperar o tamanho do arquivo: getSize() Verificar se é um executável: isExecutable() Verificar se existe a permissão de leitura: isReadable() Verificar se existe a permissão de gravação: isWritable()

Na página do manual, você pode obter uma listagem completa dos métodos, dá uma passada lá.