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] Manipuler XML en PHP


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut [XML] Manipuler XML en PHP
    Bonjour,

    J'ai en problème pour manipuler un fichier XML en PHP. Je voudrais par exemple dans le fichier XML suivent:

    <description>

    <a1><teste></teste><a1>

    </description>

    pouvoir supprimer la balise "teste" et la remplacée par un texte. J'ai transformé ce fichier en simplexml puis à l'aide de requête Xpath sélectionner la balise "texte" mais il n'y a pas de fonction pour la surprime. Je me suis donc tourné vers la solution du DOMDocument. Mais je ne comprends pas trop comment il marche. Pourquoi il convertit le résulta d'une requête Xpath en DOMListe? Comment fait ton pour utiliser des fonctions comme creatAtribute après une requête Xpath?

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    L'objet DOMNodeList est traversable.
    Tu peux faire:
    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
     
    $xml = <<< XML
    <?xml version="1.0" ?>
    <description>
    <a1><teste></teste></a1>
    </description>
    XML;
     
    $doc = new DOMDocument;
    $doc->loadXML($xml);
     
    $xpath = new DOMXPath($doc);
    $node_list = $xpath->query('//teste');
    foreach ($node_list as $node) {
      $new_node = $doc->createTextNode('TEST');
      $node->parentNode->replaceChild($new_node, $node);
    }
     
    var_dump($doc->saveXML());

Discussions similaires

  1. [DOM] Manipulation de fichier XML avec PHP
    Par CIFQ_Drew dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 04/05/2008, 22h09
  2. [XSLT] transformation XML->XML en php
    Par amellouki dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 03/03/2005, 12h32
  3. [XSLT] XML et PHP
    Par Dam'$ dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 05/08/2004, 15h14
  4. [XML et PHP]
    Par Mister Nono dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 22/03/2004, 13h57
  5. XML + XSL + PHP
    Par ZzZerf dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 21/03/2003, 15h54

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