Fonction opendir

La fonction opendir ouvre le répertoire spécifié et retourne son descripteur (ressource), qui est ensuite utilisé avec les fonctions de lecture du contenu du répertoire. Après avoir terminé de travailler avec le répertoire, il faut le fermer à l'aide de closedir.

Syntaxe

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

Exemple

Utilisation de base de opendir :

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

Résultat de l'exécution du code (exemple de sortie) :

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

Exemple

Gestion d'une erreur d'ouverture de répertoire :

php<?php
  $dir = opendir('/nonexistent/path');
  if ($dir === false) {
    echo "Impossible d'ouvrir le répertoire";
  } else {
    // Travail avec le répertoire
    closedir($dir);
  }
?>

Résultat de l'exécution du code :

php"Impossible d'ouvrir le répertoire"

Exemple

Utilisation avec un contexte de flux :

php<?php
  $context = stream_context_create();
  $dir = opendir('ftp://user:password@example.com/', $context);
  if ($dir) {
    // Lecture du contenu du répertoire FTP
    closedir($dir);
  }
?>

Dans cet exemple, une connexion à un serveur FTP est ouverte pour lire le contenu d'un répertoire distant.

Voir aussi

  • la fonction readdir,
    qui lit le contenu d'un répertoire ouvert
  • la fonction closedir,
    qui ferme le descripteur de répertoire
  • la fonction scandir,
    qui retourne la liste des fichiers et répertoires sous forme de tableau