[resolu] DOM (XML) : insertion d'un élément avant un autre

DOM (XML) : insertion d'un élément avant un autre [resolu] - PHP - Programmation

Marsh Posté le 06-11-2005 à 16:42:18    

Bonjour !
Voici mon mon problème : j'ai un document XML chargé au préalable avec DOM (en fait DOM XML) de ce type :

Code :
  1. <parent>
  2. <premier></premier>
  3. <troisieme></troisieme>
  4. </parent>


Je souhaite intégrer un élément <deuxieme></deuxieme> entre l'élément "premier" et l'élément "troisieme" (ou plus simplement avant l'élément "troisieme" ).
J'essaie depuis plusieurs jours d'utiliser la fonction insertBefore du DOM (ou insert_before avec DOM XML pour PHP 4), et je n'arrive pas du tout à obtenir ce que je souhaite...
J'ai beau lire la documentation (http://www.php.net/manual/fr/funct [...] before.php), sa syntaxe reste assez peu claire.
Sachant que l'élément "parent" est contenu dans $parent, "premier" dans $premier, "deuxieme" (créé avec un createElement) dans $deuxieme, et ainsi de suite, comment puis-je réaliser (simplement, sans Xpath) ma modification de document XML ?
Le document XML est quant à lui dans la variable $monXml .
Merci !


Message édité par miklp2 le 09-11-2005 à 22:39:33
Reply

Marsh Posté le 06-11-2005 à 16:42:18   

Reply

Marsh Posté le 09-11-2005 à 22:40:48    

C'est bon, le problème est résolu !
Il fallait que je fasse (en PHP 4) :

Code :
  1. $parent->insert_before($deuxieme, $troisieme)


ce qui donne en PHP 5 :

Code :
  1. $parent->insertBefore($deuxieme, $troisieme)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed