Exibindo arquivos de um diretório em PHP

Todas as vezes em que precisei listar arquivos de um diretório – em PHP usava as funções opendir() e readdir(). Há muito tempo não precisava fazer isso, e hoje me deparei com essa necessidade.
Fui procurar a documentação e encontrei uma outra função que nunca tinha visto, a glob(). Só é necessário passar o caminho fisíco do diretório e ele retorna um array de entradas com arquivos e diretórios.

O uso é simples:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Listando arquivos</title>
</head>
<body>
<ul>
<?php
    //define o caminho do diretório
    $dir = "/Applications/MAMP/htdocs/exemplos/files/";
    //listar arquivos
    $files = glob($dir."/*") or die("Erro ao acessar " . $dir);
    //permorre a lista
    foreach($files as $file) {
        if (!is_dir($file)){
?>
    <li><a href="<?php echo $file;?>" title="<?php echo $file;?>"><?php echo $file;?></a></li>
<?php
        }
    }
?>
</ul>
</body>
</html>

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *