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.

Valores de 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

Exemplo 1. Um exemplo simples de scandir()

<?php
$dir    
= '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);

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] => .
)

Exemplo 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 Apêndice M para uma lista de protocolos URL suportados.

Veja também

opendir()
readdir()
glob()
is_dir()
sort()