glob
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
glob — Acha caminhos que combinam com um padrão
Descrição
A função glob() procura por todos os caminhos
que combinem com o padrão pattern
de acordo
com as regras usadas pela função glob() da libc, que é semelhante
às regras usadas por shells comuns.
Parâmetros
pattern
-
O padrão. Não é feita nenhuma expansão de til ou substituição de parâmetros.
Caracteres especiais:
-
*
- Corresponde a zero ou mais caracteres. -
?
- Corresponde a exatamente um caractere (qualquer caractere). -
[...]
- Corresponde a um caractere de um grupo de caracteres. Se o primeiro caractere for!
, corresponde a qualquer caractere que não estiver no grupo. -
\
- Faz escape no caractere seguinte, exceto quando a opçãoGLOB_NOESCAPE
for usada.
-
flags
-
Opções válidas:
-
GLOB_BRACE
(int) -
Expande {a,b,c} para corresponder a 'a', 'b', ou 'c'
Note:
GLOB_BRACE
não está disponível em alguns sistemas não-GNU, como Solaris ou Alpine Linux. -
GLOB_ERR
(int) - Para em erros de leitura (como diretórios não legíveis), por padrão erros são ignorados.
-
GLOB_ONLYDIR
(int) - Retorna somente entradas de diretório que correspondem ao padrão
-
GLOB_MARK
(int) - Adiciona uma barra (ou barra invertida no Windows) para cada diretório retornado
-
GLOB_NOSORT
(int) - Retorna os arquivos conforme aparecem no diretório (sem ordenação). Quando esta opção não é usada, os nomes são ordenados alfabeticamente.
-
GLOB_NOCHECK
(int) - Retorna o padrão de busca se nenhum arquivo correspondente a ele for encontrado.
-
GLOB_NOESCAPE
(int) - Barras invertidas não escapam meta-caracteres
-
GLOB_AVAILABLE_FLAGS
(int) -
Todas as opções
GLOB_*
combinadas. Equivalente a0
|GLOB_BRACE
|GLOB_MARK
|GLOB_NOSORT
|GLOB_NOCHECK
|GLOB_NOESCAPE
|GLOB_ERR
|GLOB_ONLYDIR
-
Valor Retornado
Retorna um array contendo os arquivos/diretórios que corresponderam, um array
vazio se nenhum arquivo correspondeu ou false
em caso de erro.
Note:
Em alguns sistemas é impossível distinguir entre resultado vazio ou um erro.
Exemplos
Example #1 Modo conveniente de como glob() pode susbstituir opendir() e companhia.
<?php
foreach (glob("*.txt") as $arquivo) {
echo "tamanho de $arquivo " . filesize($arquivo) . "\n";
}
?>
O exemplo acima produzirá algo semelhante a:
tamanho de funclist.txt 44686 tamanho de funcsummary.txt 267625 tamanho de quickref.txt 137820
Notas
Note: Esta função não funcionará em arquivos remotos, pois o arquivo a ser examinado deve ser acessível através do sistema de arquivos do servidor.
Note: Esta função não está disponível em alguns sistemas (ex.: antigo Sun OS).
Veja Também
- opendir() - Abre um manipulador de diretório
- readdir() - Lê entrada do manipulador do diretório
- closedir() - Fecha o manipulador do diretório
- fnmatch() - Compara nome de arquivo com um padrão