Maison >développement back-end >tutoriel php >Comment lister les fichiers d'un répertoire et ses sous-répertoires en PHP ?

Comment lister les fichiers d'un répertoire et ses sous-répertoires en PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-03 12:26:03961parcourir

How to List Files in a Directory and its Subdirectories in PHP?

Liste des fichiers dans le répertoire et les sous-répertoires en PHP

En PHP, vous pouvez utiliser des méthodes d'itération de répertoire pour parcourir un répertoire donné et ses sous-répertoires , récupérant efficacement une liste de tous les fichiers au sein de leur structure hiérarchique.

Pour y parvenir, suivez les étapes suivantes :

  1. Instancier un objet RecursiveDirectoryIterator pour explorer de manière récursive le répertoire et ses sous-répertoires.
  2. Créez un RecursiveIteratorIterator pour envelopper le RecursiveDirectoryIterator et fournissez un moyen de parcourir les objets de manière imbriquée.
  3. Dans la boucle, filtrez les éléments tels que "." et ".." représentant respectivement les répertoires actuel et parent.
  4. Pour obtenir le nom de fichier, utilisez la variable $filename.

Voici un exemple qui renvoie un tableau de chemins de fichiers. :

<code class="php">$files = array();
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.')) as $filename) {
    // filter out "." and ".."
    if ($filename->isDir()) continue;

    $files[] = $filename->getPathname();
}</code>

Le tableau $files résultant contiendra les chemins complets de tous les fichiers du répertoire actuel et de ses sous-répertoires. Par exemple, cela pourrait ressembler à :

<code class="php">array("folder1/file.jpg", "folder2/blah.word", "root/name.fileext")</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn