IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Upload] la chasse aux dossiers vides


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 349
    Points : 109
    Points
    109
    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

  2. #2
    Membre éprouvé Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    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 : 786
    Points : 1 262
    Points
    1 262
    Par défaut
    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.

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    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 ?

  4. #4
    Membre éprouvé Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    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 : 786
    Points : 1 262
    Points
    1 262
    Par défaut
    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.

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 61
    Points : 54
    Points
    54
    Par défaut
    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).

Discussions similaires

  1. La chasse aux bugs (jeu d'Echecs)
    Par Sub0 dans le forum Développement 2D, 3D et Jeux
    Réponses: 117
    Dernier message: 06/11/2008, 10h46
  2. [Upload] Upload et gestion des dossier !
    Par phoeniix07 dans le forum Langage
    Réponses: 4
    Dernier message: 24/05/2006, 12h24
  3. [C#] Acces aux dossiers et fichiers d'un Serveur
    Par laetyboop dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/04/2006, 12h08
  4. restreindre les acces aux dossiers
    Par remi77 dans le forum Sécurité
    Réponses: 8
    Dernier message: 08/01/2006, 02h56
  5. [VB6]TextBox liés aux données vides
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 09/12/2005, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo