Forum und email

scandir

(PHP 5)

scandir — Lista os arquivos e diretórios que estão no caminho especificado

Descrição

array scandir ( string $directory [, int $sorting_order [, resource $context ]] )

Retorna um array de arquivos e diretórios dentro de directory .

Parâmetros

directory

O diretório que será pesquisado.

sorting_order

Por padrão, a lista está em ordem alfabética ascendente (menor para maior). Se o parâmetro opcional sorting_order for usado (com o valor 1), então a lista será ordenada de maneira descendente.

context

Para uma descrição do parâmetro context veja a seção de streams do manual.

Valor Retornado

Retorna umarray com nomes de arquivos se tiver sucesso, ou FALSE em caso de erro. Se directory não for um diretório, então FALSE é retornado e um erro de nível E_WARNING é gerado.

Exemplos

Example#1 Um exemplo simples de scandir()

<?php
$dir    
'/tmp';
$files1 scandir($dir);
$files2 scandir($dir1);

print_r($files1);
print_r($files2);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Example#2 Alternativas do PHP 4 para scandir()

<?php
$dir 
"/tmp";
$dh  opendir($dir);
while (
false !== ($filename readdir($dh))) {
    
$files[] = $filename;
}

sort($files);

print_r($files);

rsort($files);

print_r($files);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Notas

Dica

Você pode usar uma URL com esta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e List of Supported Protocols/Wrappers para uma lista de protocolos URL suportados.