Page 101 - Programador-PHP
P. 101
Programación Procedural de Aplicaciones Web de baja complejidad
PHP Experto – Tomo I Eugenia Bahit
• readdir retorna el nombre del elemento (archivo o
directorio) pero en caso de error, puede devolver tanto
False como un valor no booleano que pueda ser
evaluado como False, por lo cual, antes de ejecutar
alguna acción, debe verificarse el retorno.
• En sistemas basados en UNIX, todo directorio contiene a
la vez dos subdirectorios ocultos cuyos nombres son .
(punto) y .. (doble punto), que deben ser validados
previamente a fin de evitar listarlos.
// abro el directorio
$dir = opendir('../taller-de-funciones');
// itero solo si readdir NO devuelve False
while(($elemento = readdir($dir)) !== False) {
// imprimo el nombre del archivo o directorio
echo $elemento . chr(10);
}
// cierro el directorio
closedir($dir);
/*
Salida:
index.php
template.html
funciones.php
..
files
.
*/
Nótese que en el ejemplo anterior, se están listando los dos
directorios ocultos típicos de todo sistema UNIX-Like. Para
evitar eso, será necesario filtrarlos:
// abro el directorio
$dir = opendir('../taller-de-funciones');
// inicializo un array donde guardaré cada elemento
$contenido = array();
101