Función opendir

La función opendir abre el directorio especificado y devuelve su descriptor (recurso), que luego se utiliza con funciones de lectura del contenido del directorio. Después de terminar de trabajar con el directorio, debe cerrarse mediante closedir.

Sintaxis

phpopendir(string $path, resource $context = null): resource|false

Ejemplo

Uso básico de opendir:

php<?php
  $dir = opendir('/path/to/directory');
  
  if ($dir) {
    while (($file = readdir($dir)) !== false) {
      echo $file . "\n";
    }
    closedir($dir);
  }
?>

Resultado de ejecutar el código (ejemplo de salida):

php"."
".."
"file1.txt"
"subdirectory"

Ejemplo

Manejo de error al abrir el directorio:

php<?php
  $dir = opendir('/nonexistent/path');
  if ($dir === false) {
    echo "No se pudo abrir el directorio";
  } else {
    // Trabajar con el directorio
    closedir($dir);
  }
?>

Resultado de ejecutar el código:

php"No se pudo abrir el directorio"

Ejemplo

Uso con contexto de flujo:

php<?php
  $context = stream_context_create();
  $dir = opendir('ftp://user:password@example.com/', $context);
  if ($dir) {
    // Leer contenido del directorio FTP
    closedir($dir);
  }
?>

En este ejemplo se abre una conexión con un servidor FTP para leer el contenido de un directorio remoto.

Véase también

  • la función readdir,
    que lee el contenido de un directorio abierto
  • la función closedir,
    que cierra el descriptor del directorio
  • la función scandir,
    que devuelve una lista de archivos y directorios en forma de array