Page 1 sur 1

[DOM] Suppression et ajout dans un fichier XML

Posté : 06 juil. 2005, 15:48
par jckfun
Bonjour tout le monde.

J'ai réussi à modifier les valeurs de balises de mon fichier XML avec SimpleXML, mais maintenant, je voudrais supprimer des balises et en ajouter.

En fait, mon fichier XML contient une liste de produits comme ceci :

Code : Tout sélectionner

<product-list> <product> <productId>1</productId> <currency>EUR</currency> <amount>25.0</amount> <description>bonbon</description> </product> <product> <productId>2</productId> <currency>USD</currency> <amount>10.0</amount> <description>sac</description> </product> </product-list>
En résumé, je souhaiterai, par exemple:
* supprimer le produit (et tous les fils) désigné par productId ="2"
* ajouter un produit désigné par productId ="10" avec differentes caractéristiques, et ce, a la fin de tous les produits existants.

Le probleme est que SimpleXML ne gere pas cela.

Je dois donc utiliser DOM, et je ne trouve pas de tutoriaux sur cette API. Etant en PHP 5.x, je ne peux pas utiliser DOM XML mais UNIQUEMENT DOM.

Avez vous une idee de comment proceder ? ou un tutorial sympa ?

Merci d'avance ...

Posté : 06 juil. 2005, 16:01
par mere-teresa
Effectivement SimpleXML ne gère pas l'écriture de nouveaux noeuds dans le fichier.
Mais pourquoi ne peux-tu pas utiliser dom_xml si tu es en PHP 5 ?
http://www.nexen.net/docs/php/annotee/domxml.intro.php

Posté : 07 juil. 2005, 11:08
par jckfun
Merci de ta réponse !

En fait je suis certain qu il n est pas possible d'utiliser DOM XML avec PHP5. En effet, en reference a :http://fr2.php.net/manual/fr/ref.domxml.php
DOM XML n'est plus considérée comme expérimental. Néanmoins, elle ne sera jamais distribuée avec PHP 5 mais uniquement avec PHP 4. Si vous avez besoin du support DOM XML avec PHP 5, vous pouvez utiliser l'extension DOM. domxml n'est pas compatible avec l'extension DOM
Le lien que tu m'as donné ne fonctionne pas. Enfin, je potasse toujours pour essayer de comprendre le fonctionnement de DOM qui n'est pas si EASY que cela.

Personne n'a déja fait cela ? petites aides :)

A bientot

Posté : 07 juil. 2005, 11:10
par mere-teresa