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 :

Récupérer variable tableau XML [PHP 5.4]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 13
    Points
    13
    Par défaut Récupérer variable tableau XML
    Bonjour à tous !

    Aujourd'hui, j'essaye de récupérer des données à partir d'un XML. Voici comment je procède :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $xml = simplexml_load_file($dossier . $fichier);
    Ca c'est le code qui permet d'accéder à mon xml. Pas de souci par rapport à ça.

    Je fais ensuite un var_dump, pour voir si je récupère bien les données. Résultat :

    object(SimpleXMLElement)#1 (1) { ["product"]=> object(SimpleXMLElement)#2 (5) { ["@attributes"]=> array(10) { ["id_product"]=> string(0) "" ["reference"]=> string(4) "MK10" ["quantity"]=> string(3) "450" ["unit"]=> string(6) "Carton" ["price"]=> string(5) "29.85" ["tax"]=> string(3) "0.2" ["stock"]=> string(4) "1024" ["active"]=> string(4) "True" ["weight"]=> string(0) "" ["volumn"]=> string(0) "" } ["description"]=> string(47) " Barquette ronde rigide + couvercle 15382 " ["tags"]=> object(SimpleXMLElement)#3 (1) { ["tag"]=> object(SimpleXMLElement)#6 (1) { ["@attributes"]=> array(2) { ["id_tag"]=> string(0) "" ["name"]=> string(13) "MICRO-ONDABLE" } } } ["attributes"]=> object(SimpleXMLElement)#4 (1) { ["attribute"]=> object(SimpleXMLElement)#6 (1) { ["@attributes"]=> array(3) { ["id_attribute"]=> string(0) "" ["name"]=> string(0) "" ["value"]=> string(0) "" } } } ["images"]=> object(SimpleXMLElement)#5 (1) { ["image"]=> object(SimpleXMLElement)#6 (1) { ["@attributes"]=> array(1) { ["id_image"]=> string(0) "" } } } } }
    Ensuite pour accéder aux données je procède comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $node = $xml->children();
    echo  $node[0]->description;
    Ca me permet d'afficher la description sans problème. Cependant, je n'arrive pas à accéder, par exemple, à l'attribut "reference"... J'ai tout essayé, quelque chose m'échappe !!!

    Je suis sûr que c'est un tout petit détail qui m'échappe !

    En espérant trouver une réponse, je vous remercie d'avance !


    Edit :

    Quand je fais un print_r de $node[0], voici ce qu'il m'affiche :

    SimpleXMLElement Object ( [@attributes] => Array ( [id_product] => [reference] => MK10 [quantity] => 450 [unit] => Carton [price] => 29.85 [tax] => 0.2 [stock] => 1024 [active] => True [weight] => [volumn] => ) [description] => Barquette ronde rigide + couvercle 15382 [tags] => SimpleXMLElement Object ( [tag] => SimpleXMLElement Object ( [@attributes] => Array ( [id_tag] => [name] => MICRO-ONDABLE ) ) ) [attributes] => SimpleXMLElement Object ( [attribute] => SimpleXMLElement Object ( [@attributes] => Array ( [id_attribute] => [name] => [value] => ) ) ) [images] => SimpleXMLElement Object ( [image] => SimpleXMLElement Object ( [@attributes] => Array ( [id_image] => ) ) ) )

    Edit 2 :

    Voici ce que contient le fichier XML :

    Code xml : 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
    <products>
    	<product id_product='' reference='MK10' quantity='450' unit='Carton' price='29.85' tax='0.2' stock='1024' active='True' weight='' volumn='' >
    		<description>
    			Barquette ronde rigide + couvercle 15382
    		</description>
    		<tags>
    			<tag id_tag='' name='MICRO-ONDABLE' />
    		</tags>
    		<attributes>
    			<attribute id_attribute='' name='' value='' />
    		</attributes>
    		<images>
    			<image id_image=''>
     
    			</image>
    		</images>
    	</product>
    </products>

    La difficulté est de récupérer les attributs de la balise product ou tag par exemple.....

  2. #2
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo  $node[0]['reference']; // affiche 'MK10'
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 13
    Points
    13
    Par défaut
    Merci pour votre aide, je savais que ce n'était pas compliqué !!!
    J'ai compris le principe.
    Pour afficher le 'name' du tag :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $node[0]->tags->tag['name'];
    Merci beaucoup

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

Discussions similaires

  1. [MySQL] Requête SQL pour récupérer variable tableau
    Par Baka59 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 16/10/2008, 19h06
  2. [XML] Comment récupérer un fichier xml dans un tableau ?
    Par n_adou dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 09/06/2008, 11h31
  3. récupérer des données XML sous forme de tableau
    Par ar vuzhugenn dans le forum ActionScript 1 & ActionScript 2
    Réponses: 8
    Dernier message: 22/04/2008, 21h21
  4. [Tableaux] Récupérer variables depuis tableau
    Par bigzpanda dans le forum Langage
    Réponses: 4
    Dernier message: 29/07/2007, 20h38
  5. Réponses: 1
    Dernier message: 14/09/2006, 10h53

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