Maison >développement back-end >tutoriel php >Comment puis-je récupérer les noms de fichiers d'un répertoire en PHP ?

Comment puis-je récupérer les noms de fichiers d'un répertoire en PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-18 18:40:04951parcourir

How Can I Retrieve Filenames from a Directory in PHP?

Obtention de noms de fichiers à partir d'un répertoire à l'aide de PHP

De nombreux développeurs PHP recherchent une méthode fiable pour récupérer les noms de fichiers dans un répertoire. Ce guide complet explore plusieurs approches pour réaliser cette tâche.

DirectoryIterator : le choix préféré

La classe DirectoryIterator de PHP offre une solution optimisée :

<code class="php">foreach (new DirectoryIterator('.') as $file) {
    if ($file->isDot()) continue;
    echo $file->getFilename() . '<br>';
}</code>

Scandir : un itinéraire alternatif

Scandir propose une option plus simple :

<code class="php">$files = scandir('.');
foreach ($files as $file) {
    if ($file == '.' || $file == '..') continue;
    echo $file . '<br>';
}</code>

Opendir et Readdir : option héritée

Pour la compatibilité du code existant :

<code class="php">if ($handle = opendir('.')) {
    while (false !== ($file = readdir($handle))) {
        if ($file == '.' || $file == '..') continue;
        echo $file . '<br>';
    }
    closedir($handle);
}</code>

Glob : correspondance de modèles puissante

Glob propose une approche polyvalente avec la correspondance de modèles :

<code class="php">foreach (glob("*") as $file) {
    if ($file == '.' || $file == '..') continue;
    echo $file . '<br>';
}</code>

Notez que l'utilisation de "" dans glob permet des modèles personnalisables (par exemple, "glob('.txt')" récupère les fichiers texte).

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