Maison > développement back-end > tutoriel php > Pourquoi ma liste de répertoire PHP renvoie-t-elle « 1 » au lieu des noms de fichiers ?

Pourquoi ma liste de répertoire PHP renvoie-t-elle « 1 » au lieu des noms de fichiers ?

Susan Sarandon
Libérer: 2024-12-05 06:39:15
original
661 Les gens l'ont consulté

Why Does My PHP Directory Listing Return

Récupérer les noms de fichiers d'un répertoire en PHP

En PHP, obtenir les noms de fichiers dans un répertoire peut être une tâche simple. Cependant, vous pouvez rencontrer un problème où le code que vous avez présenté renvoie « 1 » au lieu des noms de fichiers.

Plongeons dans le code :

if (is_dir($log_directory)) {
    if ($handle = opendir($log_directory)) {
        while($file = readdir($handle) !== FALSE) {
            $results_array[] = $file;
        }
        closedir($handle);
    }
}
Copier après la connexion

Dans ce code, vous 'essayez de lire des fichiers à partir d'un répertoire en utilisant opendir() et readdir(). Bien que cette approche fonctionne dans de nombreux cas, elle peut ne pas toujours afficher correctement les noms de fichiers.

Solution : utiliser glob() pour la récupération de fichiers

Au lieu d'utiliser opendir( ) et readdir(), envisagez d'utiliser la fonction glob(). Il fournit un moyen plus efficace de récupérer une liste de fichiers dans un répertoire :

foreach(glob($log_directory.'/*.*') as $file) {
    ...
}
Copier après la connexion

Dans ce code, glob() recherchera dans le $log_directory tous les fichiers avec n'importe quelle extension de fichier (*.*). Il renvoie un tableau contenant les chemins complets des fichiers trouvés.

En parcourant le tableau obtenu à partir de glob(), vous pouvez accéder au chemin complet de chaque fichier, y compris son nom. Cette méthode élimine le problème d'obtenir « 1 » comme nom de fichier, vous fournissant les noms de fichiers réels dans le répertoire.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal