Récupération des noms de fichiers de répertoire à l'aide de PHP
Lorsque vous travaillez avec des systèmes de fichiers en PHP, il est souvent nécessaire d'obtenir une liste de noms de fichiers dans un répertoire . Bien que la fonction readdir intégrée puisse être utilisée à cette fin, elle présente certaines limites.
Rencontrez le problème « 1 » avec readdir :
Dans certains cas, l'utilisation de readdir peut entraîner une sortie inattendue. Par exemple, lorsque vous tentez de récupérer des noms de fichiers dans un répertoire, le code ci-dessous peut produire un tableau rempli de « 1 » plutôt que les noms de fichiers réels :
if (is_dir($log_directory)) { if ($handle = opendir($log_directory)) { while($file = readdir($handle) !== FALSE) { $results_array[] = $file; } closedir($handle); } }
Solution : Utiliser glob pour le nom de fichier Récupération :
Pour surmonter ce problème et obtenir les noms de fichiers souhaités, il est recommandé d'utiliser la fonction glob. glob prend un modèle de chemin de fichier comme argument et renvoie un tableau de noms de fichiers qui correspondent à ce modèle.
En utilisant glob, vous pouvez facilement récupérer les noms de fichiers dans un répertoire en utilisant la syntaxe suivante :
foreach(glob($log_directory.'/*.*') as $file) { ... }
Dans cet exemple, $log_directory représente le chemin du répertoire à partir duquel vous souhaitez récupérer les noms de fichiers. Le modèle *.* correspond à tous les fichiers avec n'importe quelle extension dans le répertoire spécifié.
En parcourant le tableau renvoyé par glob, vous pouvez accéder aux noms de fichiers et effectuer d'autres opérations si nécessaire.
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!