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 :

[Tableaux] Équivalent de scandir pour php4 ?


Sujet :

Langage PHP

  1. #1
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut [Tableaux] Équivalent de scandir pour php4 ?
    Bonjour
    j'ai besoin d'avoir tous les dossiers contenu dans un répertoire c:tmp/

    J'ai vu qu'il y avait la fonction scandir mais disponible seulement sous php5
    je suis en 4 ca cause un peu probleme

    y a-t-il une fonction qui fait la meme chose dans cette version?
    merci

  2. #2
    Membre expérimenté

    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
    Par défaut
    Fonctions : opendir, readdir et closedir. Vous en trouverez probablement plusieurs exemples dans la FAQ.


    Julp.

  3. #3
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    Dans la doc officielle, exemple 2 : http://php.net/scandir

  4. #4
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut
    Ok merci pour l'exmple #2...j'avais pas bien lu

    Donc il parcours le dossier au complet en sortant tout ce qu'il comprend... fichier et dossier
    Retourne un array..excellent

    Est-ce qu'il y a moyen de savoir à ce moment si c'est un dossier ou un fichier?
    Devrais-je faire une validation avec un is_dir sur le retour dans l'array ou encore devrais-je testé voir s'il le retour possède une extension?

    Un moyen plus facile de vérifier le type dossier ou fichier retourner par la fonction?

    merci à l'avance

  5. #5
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut
    C'est bon je fais la validation si c,est un dossier
    une petite question pour vous par contre....

    Si je dois faire afficher l'arborescence d'un dossier (juste les répertoires ainsi que les sous-répertoires) et que je ne sais pas comment de sous-niveau il peut y avoir(jusqu'a un certain point quand meme pas plus de 5-6)

    ma question est, devrais-je y aller avec un développement ittératif ou encore récurcif?

    J'en discutais avec des gens qui disaient que récursif allait utiliser bcp plus de mémoire bien qu'il soit plus court à programmer que le parcours ittératif..

    lequel serait le plus ou encore le mieux envisageable?

    merci

  6. #6
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    Franchement, si c'est pour lister un répertoire, le récursif est très bien.
    C'est vrai que pour certains problèmes il vaut mieux passer du temps à coder en itératif mais là, ça ne vaut pas du tout le coup. Ou alors dans un but pédagogique...

  7. #7
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut
    Ok merci
    ce qui me cause un peu probleme est la condition de sortie de ma récursive
    devrais-je compter le nombre de dossier et une fois qu'il y en a plus..c'est a dire seulement des fichier dans un répertoire...je sors?

    Une autre chose qui me cause probleme est l'affichage de tout ceci...j'aimerais faire afficher ca dans une table html, le proleme est que..comme je ne sais pas au plus profond, combien de sous dossier j'ai...les niveau...
    je ne sais pas comment mettre de td, j'aimerais bien le construire dynamiquement mais bon...ca craint pas mal
    Vous me demanderez surment pourquoi je veux mettre ca dans un tableau et bien c'est parceque j'ai besoin de mettre les dossier de maniere organisé pour qu'on puisse voir l'arborescence et aussi parceque par la suite je voudrait effectuer des action sur ces dossier en clickant directement sur ces derniers...une navigation rapide quoi...

    Je m'embarque dans quelque chose à mon avis...et à votre avis?

  8. #8
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    Mon avis ?
    =>
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <ul>
      <li>Dossier A
         <ul>
             <li>Dossier B</li>
             <li>Dossier C
                <ul>
                   <li>Dossier D</li>
                </ul>
             </li>
          </ul>
       </li>
       <li>Dossier E</li>
    </ul>
    Ce qui donne :
    • Dossier A
      • Dossier B
      • Dossier C
        • Dossier D
    • Dossier E
    Pas besoin de table, l'indentation se fait toute seule Un coup de css pour afficher la puce en forme de dossier et c'est fini

    L'algo est assez simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    afficher <li>
    afficher le nom du dossier en cours
    si le dossier a des sous dossiers
       afficher <ul> 
       pour chaque sous dossiers
          appliquer cet algo sur cet élément
       afficher </ul>
    afficher </li>

  9. #9
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut
    Ouais merci ca semble plus simple avec votre manière
    alors je garde cela en tête et me penche sur la résolution de la situation
    merci pour votre aide et temps
    bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quel est l'équivalent de Findcomponent pour les Forms ?
    Par Ben_Le_Cool dans le forum Composants VCL
    Réponses: 12
    Dernier message: 23/09/2005, 13h48
  2. Réponses: 2
    Dernier message: 20/09/2005, 16h10
  3. équivalent SQL*Loader pour FB / IB
    Par djeant dans le forum Outils
    Réponses: 9
    Dernier message: 10/01/2005, 22h26
  4. Équivalent de Seek pour un TextFile
    Par WebPac dans le forum Langage
    Réponses: 11
    Dernier message: 24/11/2004, 16h01
  5. Réponses: 3
    Dernier message: 10/04/2004, 00h35

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