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 :

Accéder à une valeur particulière au sein d'un arbre (array)


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Gérant de Skyline-creations
    Inscrit en
    Mars 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant de Skyline-creations
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Accéder à une valeur particulière au sein d'un arbre (array)
    Bonjour,

    Je viens vers vous car je suis quelques peu gène sur un soucis en PHP.

    Lors d'un listing recursif de mes dossiers ( listDirectory($dir) ), je récupère tout mes dossiers et mes fichiers, affichable avec une arborescence via quelques tricks html ( margin-left:15px par exemple). Juste que la tout va bien.

    Mais ma difficulté désormais réside sur le fait que je veux stocké ces informations dans un tableau. De tel sorte que j'ai de base un array :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    'name' => 'Racine',
    'path' => 'C:/Doc',
    'folders' => '',
    'files => ''
    Que je veux pouvoir remplir de tel sorte que dans folders, j'ai un array similaire à ce que j'ai déjà fait pour ma racine, en clair un tableau multidimensionnel.

    ainsi avoir un tableau qui ressemblerai à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    array(
    'name' => 'Racine',
    'path' => 'C:/Doc',
    'folders' => array('name'=>'dossier1', 'path'=>'c:/doc/dossier1', 'folders'=>array(..), 'files'=>array(..)), 
    'files => array(...)
    );
    Me permettant ensuite à tout loisir de traiter ces informations via les différents critères que j'ai (Niveau de droit, extensions, avoir une arborescence évoluée etc... )

    Mais autant j'accede sans soucis à $tab['files'] pour y ajouter mon autre array. Autant ensuite, je ne sais pas comment acceder à l'array inclus dans mon array. En fait il faudrai que je puisse naviguer de la racine au branche de cet arbre.
    J'ai vu qu'il y avais FileSystemIterator, DirectoryIterator etc... Mais ceux ci ne me conviennent pas car je n'ai pas la main sur ce qu'il me sors, or j'ai besoin de faire des manipulation dans mon tableau, et pouvoir en faire d'autre à la lecture de ce tableau et non pas afficher pele mele mon arborescence.

    Je me suis peut-être pas expliqué de la meilleure des façons, j'ai un peu du mal avec tout les moyens que j'ai essayé de mettre en oeuvre que je m'embrouille. Si besoin faites moi savoir que j'explique mieux mon soucis.

    Je vous remercie de tout aide que la très chère communauté pourra m'apporter, je vous avoue que la, je suis quelques peu bloqué.

    Merci de votre lecture,
    Cordialement,

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2012
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2012
    Messages : 111
    Points : 144
    Points
    144
    Par défaut
    Bonjour,
    ton explication est un peu fouillis. Ton but final, est de posséder un tableau de tous tes fichiers et dossiers, pour pouvoir, dans le tableau modifier les droits?

    A quoi correspond une feuille de ton arbre? Un string, un tableau avec des attributs? une "classe" qui te permet de manipuler des droits?

    Mais autant j'accede sans soucis à $tab['files'] pour y ajouter mon autre array. Autant ensuite, je ne sais pas comment acceder à l'array inclus dans mon array
    ton $tab['files'] est un tableau donc s'il n'est pas null, tu accède au sous tableau (ex folder) en faisant $tab['files']['folder']
    L'art du developpement est la logique.
    Tout est possible, il suffit de chercher :p
    Si le problème est résolu
    Pense à Merci

  3. #3
    Candidat au Club
    Homme Profil pro
    Gérant de Skyline-creations
    Inscrit en
    Mars 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant de Skyline-creations
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Pour pouvoir afficher une arborescence par exemple ou modifier les droits.

    L'affichage de l'arborescence est différente en fonction des utilisateurs.

    Globalement la feuille ( par exemple le nom du dernier fichier dans plusieurs dossier ) correspond à un string.
    Le reste c'est un tableau (toujours le même seule les données changent)

    Merci de ta réponse (je ne sais pas pourquoi j'y ai pas pensé, je me demande si j'avais pas eu un soucis, je teste et je te redis).

    On a aucun problème pour avoir une longue déclaration ?

    J'ai potentiellement $tab['folders']['folders']['folders']['folders']['name']="toto";

Discussions similaires

  1. Accéder à une valeur d'un tableau dynamiquement
    Par Le_PounK dans le forum Struts 1
    Réponses: 2
    Dernier message: 23/03/2007, 13h35
  2. Accéder à une valeur d'un Option
    Par Dexter00 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/10/2006, 03h59
  3. Accéder à une valeur dans un Recordset
    Par xanthos1348 dans le forum Access
    Réponses: 7
    Dernier message: 30/08/2006, 11h08
  4. Réponses: 2
    Dernier message: 21/06/2006, 09h23
  5. Accéder à une valeur d'un tableau associatif
    Par TigreRouge dans le forum Langage
    Réponses: 5
    Dernier message: 16/03/2006, 12h03

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