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

XML/XSL et SOAP Discussion :

Récupérer la valeur du noeud selon attribut précis en php


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 14
    Par défaut Récupérer la valeur du noeud selon attribut précis en php
    Bonjour,

    Comment afficher la valeur du noeud avec un attribut spécifique ?

    Les noeuds sont du type :
    <date value="print">10 janvier 2010</date>
    <date value="update">15 mars 2010</date>

    Comme on peut voir, il y a plusieurs noeuds "date" avec des attributs "value" différents. Je ne veux que la valeur du noeud pour laquelle on a "value=update"

    Voici un bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $recherche2 = '//info[contains(title,"grand")]';
    $titres2 = $item->xpath($recherche2); 
    	
        if($titres2)
    
        {
        foreach($titres2 as $actu2)
    
        { 
     
         echo '<a href= "'.htmlentities((string)$item->link).' ">'.utf8_decode($actu2->title).'</a>&nbsp;'.($item->product->price).' euros <br /> DATE : '.??????????????).'<br />';
    
        }
    A la place des points d'interrogation, je souhaiterais une formule pour afficher la date pour laquelle value=update

    Si je mets : $actu2->date['value'] , cela me renvoie "update" (si pas de noeud print, sinon rien du tout) or ce n'est pas la valeur de l'attribut que l'on souhaite mais celle du noeud soit - dans notre exemple - "15 mars 2010".

    Quelle est la bonne syntaxe ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Par défaut
    Bonjour,

    si ton expression XPath est "//info[contains(title,"grand")]"
    alors on n'as pas le XML pour comprendre comment tu sélection tes noeuds !

  3. #3
    Membre Expert Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Par défaut
    Comme ça?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo 'etc etc DATE : '.array_pop($actu2->xpath('date[@value="update"]')).'<br />';

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 14
    Par défaut Merci
    Merci, c'est exactement ça.

    Je pensais pourtant avoir essayé toutes les syntaxes ! En fait, je ne mettais pas le terme xpath dans mon echo.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/09/2009, 14h40
  2. Récupérer la valeur d'une variable dans un script php
    Par DiverSIG dans le forum Langage
    Réponses: 10
    Dernier message: 26/08/2009, 12h06
  3. Réponses: 2
    Dernier message: 22/02/2007, 14h00
  4. Réponses: 4
    Dernier message: 13/02/2007, 17h40
  5. [C#-XML] Récupérer les valeurs des noeuds enfants
    Par cyllix dans le forum Windows Forms
    Réponses: 1
    Dernier message: 23/06/2006, 11h54

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