(PHP 4, PHP 5)
readdir — Lê os campos do manipulador do diretório
$dir_handle
)Retorna o nome de arquivo do próximo arquivo do diretório. Os nomes de arquivos são retornados na ordem informada pelo sistema de arquivos.
Retorna o nome do arquivo em sucesso, ou FALSE
em falha.
Esta função pode
retornar o booleano FALSE
, mas também pode retornar um valor não-booleano que pode ser
avaliado como FALSE
, como 0 ou
"". Leia a seção em Booleanos para maiores
informações. Utilize o operador ===
para testar o valor retornado por esta
função.
Exemplo #1 Listando todos os arquivos de um diretório
Verifique cuidadosamente o estilo de checagem dos valores retornados
por readdir() nos exemplos abaixo. Nós explicitamente
testamos se o valor retornado é idêntico a (igual e
do mesmo tipo que FALSE
--- veja Operadores de
Comparação para maiores detalhes). De outra forma,
qualquer entrada de diretório que seja avaliada para FALSE
irá parar o
loop (por exemplo, um diretório nomeado "0").
<?php
// Note que !== não existia antes do PHP 4.0.0-RC2
if ($handle = opendir('/path/to/files')) {
echo "Manipulador de diretório: $handle\n";
echo "Arquivos:\n";
/* Esta é a forma correta de varrer o diretório */
while (false !== ($file = readdir($handle))) {
echo "$file\n";
}
/* Esta é a forma INCORRETA de varrer o diretório */
while ($file = readdir($handle)) {
echo "$file\n";
}
closedir($handle);
}
?>
Exemplo #2 Listar todos os arquivos no diretório atual e retirar . e ..
<?php
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\n";
}
}
closedir($handle);
}
?>