array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.scandir.php', 1 => 'scandir', ), 'up' => array ( 0 => 'ref.dir.php', 1 => 'Funções de Diretórios', ), 'prev' => array ( 0 => 'function.rewinddir.php', 1 => 'rewinddir', ), 'next' => array ( 0 => 'book.fileinfo.php', 1 => 'Fileinfo', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/dir/functions/scandir.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
scandir — Lista arquivos e diretórios dentro do caminho especificado
$directory
, int $sorting_order
= SCANDIR_SORT_ASCENDING
, ?resource $context
= null
): array|false
Retorna um array de arquivos e diretórios dentro de
directory
.
directory
O diretório que será pesquisado.
sorting_order
Por padrão, a lista está em ordem alfabética crescente. Se
o parâmetro opcional sorting_order
for definido para
SCANDIR_SORT_DESCENDING
, a ordenação será
alfabética decrescente. Se definida para
SCANDIR_SORT_NONE
, o resultado não será ordenado.
context
Para uma descrição do parâmetro context
refira-se à seção de fluxos do
manual.
Retorna um array com nomes de arquivos em caso de sucesso, ou false
em
caso de falha. Se directory
não for um diretório,
false
é retornado e um aviso
E_WARNING
é gerado.
Versão | Descrição |
---|---|
8.0.0 |
context agora pode ser nulo.
|
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 produzirá algo semelhante a:
Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => algumdiretorio ) Array ( [0] => algumdiretorio [1] => foo.txt [2] => bar.php [3] => .. [4] => . )
Uma URL pode ser usada como um nome de arquivo com esta função se os wrappers fopen estiverem habilitados. Consulte a função fopen() para mais detalhes sobre como especificar o nome do arquivo. Consulte os Protocolos e Wrappers suportados para obter links para informações sobre as capacidades de cada wrapper, notas de uso e informações sobre quaisquer variáveis predefinidas que eles possam fornecer.