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 :

[DOM] récupérer portion d'un code XML


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 130
    Par défaut [DOM] récupérer portion d'un code XML
    bonjour a tous,
    je voudrais savoir s'il y a un moyen de récupérer dans un fichier un portion de code XML (délimité par une balise et sa balise fermante) qui est sur un autre fichier.
    merci

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    avec la librairie dom ou simpleXML c'est très possible

    tu peux y trouver de très bon tutoriaux sur la partie cours PHP

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 130
    Par défaut
    j'ai lu le tuto de DOM,j'ai pas trouvé ce que je cherche,je reviens a un exemple du tuto de DOM:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?>
    <!DOCTYPE continents SYSTEM "test.dtd">
    <continents>
    <europe>
    <pays regime="republique">France</pays>
    <pays regime="monarchie constitutionnelle">Belgique</pays>
    <pays regime="monarchie constitutionnelle">Espagne</pays>
    </europe>
    <asie>
    <pays regime="empire">Japon</pays>
    <pays>Inde</pays>
    </asie>
    </continents>
    je voudrais faire un truc du genre,récupérer ce qu'il y a entre la balise <continents> et </continents>
    pour avoir en sortie ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <europe>
    <pays regime="republique">France</pays>
    <pays regime="monarchie constitutionnelle">Belgique</pays>
    <pays regime="monarchie constitutionnelle">Espagne</pays>
    </europe>
    <asie>
    <pays regime="empire">Japon</pays>
    <pays>Inde</pays>
    </asie>
    pouvez vous m'aider svp?

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 369
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 369
    Billets dans le blog
    17
    Par défaut
    Récupérer les éléments fils de <continents> :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
        header('Content-Type: text/plain') ;
     
        $dom = new DOMDocument( ) ;
        $dom->load('chemin/vers/fichier.xml') ;
     
        $continents = $dom->getElementsByTagName('continents')->item(0) ;
     
        $buffer = '' ;
        for ( $i = 0 ; $i < $continents->childNodes->length ; $i++ ) {
            $buffer .= $dom->saveXML($continents->childNodes->item($i)) ;
        }
        echo $buffer ;
    ?>
    Donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <europe>
    <pays regime="republique">France</pays>
    <pays regime="monarchie constitutionnelle">Belgique</pays>
    <pays regime="monarchie constitutionnelle">Espagne</pays>
    </europe>
    <asie>
    <pays regime="empire">Japon</pays>
    <pays>Inde</pays>
    </asie>

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 130
    Par défaut
    merci beaucoup, juste une dernière question, est-ce que c'est possible d'afficher dans le même fichier php, car là à l'exécution il m'ouvre la portion de code que je veux dans un buffer !!
    merci

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 369
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 369
    Billets dans le blog
    17
    Par défaut
    Oui, suffit d'adapter le script que j'ai collé !!

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

Discussions similaires

  1. [DOM] Récupérer du code dans balises fichier XML
    Par Capripot dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 11/04/2008, 00h05
  2. [DOM] Récupérer le nom du premier noeud d'un fichier XML en PHP
    Par ePsymon dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 08/02/2008, 10h17
  3. [DOM] récupérer attribut dans variable d'un fichier XML
    Par skyangel20 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 19/06/2007, 09h43
  4. [DOM] Récupérer l'encodage d'un fichier xml en php5
    Par Rakken dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 23/11/2006, 15h31
  5. [DOM] récupérer le code dans une balise
    Par mavvv dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/03/2006, 09h27

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