Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/11/2007, 14h12   #1
Membre régulier
 
Inscription : octobre 2006
Messages : 324
Détails du profil
Informations personnelles :
Âge : 59
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : octobre 2006
Messages : 324
Points : 70
Points : 70
Par défaut [Upload] la chasse aux dossiers vides

Hello !
petit problème :
Suite à une opération (upload), je peux avoir créé un dossier avec rien dedans !
J'aimerais une fonction pour scanner le répertoire et effacer les dossiers vides.

Si un(e) petit(e) génie....

Merci beaucoup

Précision :
Les dossiers vides se trouveront dans le même répertoire
tremeur53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2007, 16h08   #2
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Salut regarde du coté de readdir, il te suffit de lister le contenu de ton dossier et pour chaque dossier dedans de les scanner en recursif. S'ils sont vide tu appelles unlink pour le supprimer.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2007, 16h47   #3
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Citation:
Envoyé par Bebel
il te suffit de lister le contenu de ton dossier et pour chaque dossier dedans de les scanner en recursif. S'ils sont vide tu appelles unlink pour le supprimer.
C'est la fonction rmdir pour les répertoires (unlink = fichiers) Par contre, il ne faut pas oublier que tout dossier comporte au moins deux entrées (. et ..).

Voir éventuellement la FAQ : Comment savoir si un dossier est vide ?
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2007, 16h53   #4
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Citation:
Envoyé par julp Voir le message
C'est la fonction rmdir pour les répertoires (unlink = fichiers) Par contre, il ne faut pas oublier que tout dossier comporte au moins deux entrées (. et ..).

Voir éventuellement la FAQ : Comment savoir si un dossier est vide ?
exact. Mais avec un peu de recherche on passe rapidement de unlink a rmdir C'était juste pour mettre sur la piste.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2007, 17h54   #5
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 55
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 55
Points : 28
Points : 28
Une petite classe qui semble bien sympa pour lister des répertoires de façon récursive :
http://www.wikistuce.info/doku.php/p...de_repertoires

- Tu fais un "files::getFilesRecursive("/ton/dossier/");"
- Tu récupère la liste de tous les répertoires que tu souhaites tester dans un tableau.
- Tu vérifie pour chaqu'un de ces répertoires s'ils sont vides.
Pour ça, tu utilises tjrs la classe, tu fais un "files::getFiles" et un "files::getFolders" puis un count() des tableaux résultats pour savoir s'ils sont vides. Et si c'est le cas, tu fais un rmdir()

Je te préviens, j'ai à peine testé cette classe.
Le "getFilesRecursive" fonctionne parfaitement mais j'ai l'impression que le "getFiles" nécessite l'utilisation d'extensions (voir le liens pour plus d'explications).
ragnarokr est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h01.


 
 
 
 
Partenaires

Hébergement Web