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] Affichage d'array et sous-array


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Août 2004
    Messages : 24
    Points : 21
    Points
    21
    Par défaut [Tableaux] Affichage d'array et sous-array
    Bonjour à tous, oh grands dieux du PHP,

    Je précise tout d'abord que j'ai beau chercher un peu partout, je n'arrive pas à trouver la réponse à mon problème (qui doit certainement est toute conne, mais bon...)
    Il faut également dire que je suis débutant, donc ne tappez pas tout de suite

    Voilà mon problème:
    J'ai une array $lua_array qui comprend plusieurs sous-arrays comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Profile = 
         { 
         ["Zebullon"] = 
              {    ["Inventory"] = { }, 
                   ["updatedDate"] = 839068, 
                   ["guild"] = "Spadassins Placides", 
                   ["class"] = 1, 
                   ["race"] = 2, 
                   ["level"] = 20, 
                   ["creationtime"] = 843207, 
                   ["accountid"] = "QHOA838870", 
              }, 
         ["Alkraïn"] = 
              {    ["creationtime"] = 853452, 
                   ["updatedDate"] = 853513, 
                   ["guild"] = "Spadassins Placides", 
                   ["class"] = 6, 
                   ["race"] = 2, 
                   ["level"] = 36, 
                   ["Inventory"] = { }, 
                   ["accountid"] = "AOZS840105", 
              },
         }
    Avec ceci, mon but est de créer des tableaux pour chaque sous-array (sachant que le nombre peut varier).
    J'arrive correctement à récupérer une valeur finale comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $lua_array["Alkraïn"]["guild"];
    Résultat => Spadassins Placides
    Par contre, comment récupérer les noms des sous-array (ici "Zebullon" et "Alkraïn") qui sont les index de l'array principale?
    Est'il possible de récupérer un tableau? ou bien de récupérer la valeur en faisant à peut près comme ça:
    Là je tourne en rond et ça commence à me *$£µ¤@~$ sérieusement...

    Merci d'avance pour votre aide.

  2. #2
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    essaie voir array_keys

    avec un tableau simple ça marche mais je sais pas trop, avec un tableau de tableau si ça va te retourner les indices que du tableau principal ou tous les indices
    Dia [ Page DVP ] [ Site pro ]

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 12
    Points : 17
    Points
    17
    Par défaut
    je pense que ca ne marche pas, il devrait te retourner l'adresse du pointeur sur le sous tableau et non pas son nom. Ca marche sur un tableau simple parceque chaque case du tableau pointe sur une chaine de caracteres, donc c'est bien elle qui est renvoyée. Dans ce cas chaque case pointe sur un tableau qui n'est qu'une adresse.

  4. #4
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    <?php
    $Profile
    = array (
    "Zebullon" =>
    array (
    "Inventory" => '',
    "updatedDate" => 839068,
    "guild" => "Spadassins Placides",
    "class" => 1,
    "race" => 2,
    "level" => 20,
    "creationtime" => 843207,
    "accountid" => "QHOA838870",
    ),
    "Alkraïn" =>
    array (
    "creationtime" => 853452,
    "updatedDate" => 853513,
    "guild" => "Spadassins Placides",
    "class" => 6,
    "race" => 2,
    "level" => 36,
    "Inventory" => '',
    "accountid" => "AOZS840105",
    )
    );

    print_r(array_keys($Profile));
    ?>

    m'affiche Array ( [0] => Zebullon [1] => Alkraïn )

    donc ça marche
    Dia [ Page DVP ] [ Site pro ]

  5. #5
    Membre à l'essai
    Inscrit en
    Août 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Août 2004
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    Bon, dans Array_Keys, j'ai réussi à avoir la première valeur, la dernière, mais pas celles du milieu...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    print array_shift(array_keys($lua_array));
    print array_pop(array_keys($lua_array));
    Si vous savez comment récupérer la keys avec son numéro d'emplacement...
    Sachant que ce que je veux, ce n'est pas récupérer l'arbre, amis les noms des clés une par une.

    Edit: je viens de me rendre compte que array_shift ne fait pas ce que je veux... faut trouver autre chose...

  6. #6
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    ben quand t'as le tableau, c'est un bête parcours et accès aux éléments

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $cles = array_keys($Profile);
     
    for ($i = 0; $i < count($cles); $i++) {
      // fais ce que tu veux de $cles[$i], par exemple :
      echo $cles[$i];
    }
    array_shift ça te retourne le premier élément, ça le supprime puis ça décale tous les élements vers le bas (indice décrémenté de 1 par exemple)
    Dia [ Page DVP ] [ Site pro ]

  7. #7
    Membre à l'essai
    Inscrit en
    Août 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Août 2004
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    ben ouais, j'avais pas vu ça...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $test=array_keys($lua_array);
    print $test[0];
    print $test[1];
    print $test[2];
    print $test[3];
    Et ça marche tout simplement!
    Désolé pour les questions cons

    Merci beaucoup

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

Discussions similaires

  1. Array dans un Array.. Dans un Array
    Par blinkman04 dans le forum Langage
    Réponses: 3
    Dernier message: 27/01/2014, 14h36
  2. [Tableaux] affichage avec un array
    Par spaukensen dans le forum Langage
    Réponses: 2
    Dernier message: 23/04/2008, 13h31
  3. Réponses: 10
    Dernier message: 12/07/2006, 11h42
  4. [Tableaux] Affichage Array
    Par dafalri dans le forum Langage
    Réponses: 6
    Dernier message: 06/12/2005, 11h55
  5. [vb excel]Probleme affichage de contenu d'une array
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/09/2005, 16h01

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