par
Invité » 02 juin 2007, 16:31
Bonjour,
j'ai un document xml qui se présente comme suit
<racine>
<element>...</element>
<element>...</element>
<element>...</element>
<pages>
<page>pages/page01.jpg</page>
<page>pages/page02.jpg</page>
<page>pages/page03.jpg</page>
<page>pages/page04.jpg</page>
<page>pages/page05.jpg</page>
</pages>
</racine>
J'essaye de modifier tous les éléments <page>...</page> en remplaçant leur contenu par 'test', avec domXml
ça me donne ceci :
//Chargement fichier ave DOMxml
$doc = new DomDocument();
$doc->load('../openbook/mosaddphp/private/config.xml');
$pages = $doc->getElementsByTagName('pages');
foreach ($pages as $page)
{
$old = $page->nodeName;
$new = $doc->createTextNode('test');
$page->replaceChild($new , $old);
echo $page->nodeValue;
}
Je reçois l'erreur suivante
Warning: DOMNode::replaceChild() expects parameter 2 to be DOMNode, string given in C:\wamp\www\openbook\mosaddphp\private\importImg.php on line 20
Il me dit que $old = $page->nodeName; est une chaine de caractère, pas un noeud.
Ma question comment remplacer le contenu de chaque élément <page>....</page>?