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

Bibliothèques et frameworks PHP Discussion :

[XML] [EXPAT] Parcours d'un XML (avec sax) en PHP


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 147
    Points : 66
    Points
    66
    Par défaut [XML] [EXPAT] Parcours d'un XML (avec sax) en PHP
    Bonjour à tous,

    je voudrais savoir comment lire un document xml avec sax. J'aimerais pouvoir récupérer l'attribut de value donc la valeur est " STEPHANE DERVILLE".

    Voila un extrait du fichier xml:

    <Hit url="_g=valeur1" score="0">
    ...
    <HitField name="size" value="437" />
    <HitField name="cn" value="STEPHANE DERVILLE - 008951" />
    <HitField name="c" value="FR" />
    ...
    </Hit>


    Merci d'avance

  2. #2
    Expert éminent sénior

    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
    Points : 17 778
    Points
    17 778
    Par défaut
    Pour SAX, c'est la librairie XML/Expat qui est "compatible" PHP 4/5. Donc vous définissez une fonction de rappel pour le début de chaque élément, laquelle obtiendra en troisième paramètre un tableau des attributs et de leurs valeurs. Exemple :
    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
    <?php
    $xml = <<< EOX
    <Hit url="_g=valeur1" score="0">
    <HitField name="size" value="437" />
    <HitField name="cn" value="STEPHANE DERVILLE - 008951" />
    <HitField name="c" value="FR" />
    </Hit>
    EOX;
     
    function startElement($parser, $tag, $attrs) {
        if (!strcasecmp($tag, 'HitField')) {
            echo $attrs['VALUE'] . '<br/>';
        }
    }
     
    $xml_parser = xml_parser_create();
    xml_set_element_handler($xml_parser, 'startElement', NULL);
    xml_parse($xml_parser, $xml);
    xml_parser_free($xml_parser);

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

Discussions similaires

  1. Lecture de trame xml avec SAX
    Par gillD dans le forum XML
    Réponses: 1
    Dernier message: 10/09/2007, 16h02
  2. [SAX] Je dois générer un fichier XML avec SAX
    Par moi95 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 24/01/2007, 12h22
  3. [SAX] Recuperer le resultat d"un parsing XML avec SAX
    Par chouxe dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 19/12/2006, 15h48
  4. [SAX] Erreur de parsing XML avec SAX
    Par philobedo dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 02/08/2006, 13h49
  5. [SAX] Java : problème de lecture d'XML avec SAX
    Par TheReturnOfMuton dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 22/06/2006, 18h26

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