le MEMO du WEB développeur
••• PHP •••  Liste des Mémos, astuces et bonnes pratiques

Parcourir les fichiers d'un répertoire en PHP

Grâce à la classe DirectoryIterator, je parcours tous les fichiers d'une extension donnée (ici .gz) d'un répertoire donné (ici stocké dans la variable $dir_backup)

Dans la fonction suivante j'affiche le nom et la taille des fichiers .gz contenus dans le répetoire $dir_backup.

Parcours des fichiers d'une extension donnée dans un répertoire

<?php
foreach(new DirectoryIterator("glob://".$dir_backup."/*.gz") as $f) {
  printf("%s: %.1FK\n<br/>", $f->getFilename(), $f->getSize()/1024).'<br/>';
}
?>

Dans la fonction suivante, je parcours fichiers et répertoires contenus dans le répertoire stocké dans la variable $dir_backup, et j'affiche leur intitulé.

Parcours des fichiers et répertoires du répertoire $dir_backup

<?php
foreach (new DirectoryIterator($dir_backup) as $fileInfo) {
    if($fileInfo->isDot()) continue;
    echo $fileInfo->getFilename() . "<br>\n";
}
?>

 Pour n'afficher que les fichiers (sans les répertoires), je peux rajouter dans la condition if :

if($fileInfo->isDot() || $fileInfo->isRep()) continue;

 Pour n'afficher que les répertoires (sans les fichiers), je peux rajouter dans la condition if :

if($fileInfo->isDot() || $fileInfo->isFileep()) continue; 

 

publié le 09/06/2013 par Memo Web
Répertoire
Commenter le Mémo :

La superglobale $_SERVER et ses utilisations
Require - format d'écriture
Vérifier la validité d'une URL en PHP - Expression régulière
Les variables à nom "variables" en PHP
Script de Backup / Sauvegarde de la Base Mysql en PHP
Mettre en gras les occurrences d'un mot dans une phrase en PHP
Transmettre un nombre variable de paramètres dans une fonction PHP
Fonction extract() en PHP
Problème à l'affichage de l'heure en PHP - 2h de moins
Instruction SWITCH
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos