Maison  >  Article  >  développement back-end  >  Comment puis-je répertorier de manière récursive les fichiers de tous les sous-répertoires en PHP ?

Comment puis-je répertorier de manière récursive les fichiers de tous les sous-répertoires en PHP ?

DDD
DDDoriginal
2024-11-03 14:27:30171parcourir

How Can I Recursively List Files from All Subdirectories in PHP?

Liste récursive des fichiers de tous les sous-répertoires en PHP

En PHP, la fonctionnalité de liste de tous les fichiers d'un répertoire peut être étendue pour récupérer des fichiers à partir de sous-répertoires de manière récursive. Cela peut être utile pour organiser et accéder aux fichiers dans des structures de répertoires complexes.

Solution :

Pour répertorier de manière récursive les fichiers de tous les sous-répertoires, vous pouvez utiliser le code suivant :

<code class="php">foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.')) as $filename) {
    if ($filename->isDir()) {
        continue;
    }

    echo "$filename\n";
}</code>

Explication :

  • RecursiveDirectoryIterator : Crée un nouvel itérateur de répertoire récursif qui parcourt les fichiers et les répertoires d'un répertoire donné.
  • RecursiveIteratorIterator : Encapsule l'itérateur ci-dessus et fournit des capacités de filtrage et de traitement supplémentaires.

Résultat :

Le le code crée une structure de type tableau ($files) contenant tous les fichiers du répertoire actuel et tous les sous-répertoires. Le résultat sera une liste de fichiers et leurs chemins :

file.jpg
blah.word
name.fileext

Ressources supplémentaires :

  • [RecursiveDirectoryIterator](https://www.php .net/manual/en/class.recursivedirectoryiterator.php)
  • [RecursiveIteratorIterator](https://www.php.net/manual/en/class.recursiveiteratoriterator.php)

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