(PHP 4, PHP 5)
readdir — Leer una entrada desde un gestor de directorio
Devuelve el nombre del siguiente archivo leido desde el directorio. Los nombres de archivo son devueltos en el orden en que son almacenados por el sistema de archivos.
Devuelve el nombre de archivo en caso de éxito, o FALSE si ocurre un error.
Esta función puede devolver FALSE, pero también puede devolver un valor no-booleano que será evaluado FALSE, como por ejemplo 0 o "". Por favor, lea la sección Booleans para más información. Utilice el operador === para comprobar el valor devuelto por esta función.
Example#1 Listar todos los archivos en un directorio
Por favor note la forma en que el valor de retorno de dir() es chequeado en los siguientes ejemplos. Se está probando explícitamente si el valor de retorno es idéntico (igual y del mismo tipo que--vea los Operadores de Comparación para más información) a FALSE ya que de otra forma, cualquier entrada de directorio cuyo nombre evalúe a FALSE detendrá el ciclo (p.ej. un directorio llamado "0").
<?php
// Note que !== no existía hasta 4.0.0-RC2
if ($gestor = opendir('/ruta/a/archivos')) {
echo "Gestor de directorio: $gestor\n";
echo "Archivos:\n";
/* Esta es la forma correcto de iterar sobre el directorio. */
while (false !== ($archivo = readdir($gestor))) {
echo "$archivo\n";
}
/* Esta es la forma EQUIVOCADA de iterar sobre el directorio. */
while ($archivo = readdir($gestor)) {
echo "$archivo\n";
}
closedir($gestor);
}
?>
Example#2 Listar todos los archivos en el directorio actual y eliminar . y ..
<?php
if ($gestor = opendir('.')) {
while (false !== ($archivo = readdir($gestor))) {
if ($archivo != "." && $archivo != "..") {
echo "$archivo\n";
}
}
closedir($gestor);
}
?>