Bonjour,
J'ai ce fichier xml ci dessous et j'aimerais pourvoir modifier l'attribut de ma balise album donc changer la valeur de nom="name" par nom="Best" par exemple.
J'ai ce bout de code qui me permet de changer juste un noeud mais j'arrive pas l'adapter pour mon probléme.
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 <music> <album nom="The album" pochette="Image.jpg"> <titre nom="name"> <description>meilleur album</description> </titre > </album> <album nom="Moi" pochette="Image2.jpg"> <titre nom="aaaa"> <description>Le plus mauvais</description> </titre > <titre nom="bbbbbb"> <description>Coooll</description> </titre> </album> </music>
Merci beaucoup de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $doc = new DomDocument; $doc->appendChild($doc->createElement('description',$description)); $dom = new DomDocument(); $dom->load(fichier.xml); $xpath = new DOMXpath($dom); $nodelist = $xpath->query('//album/photo[@titre ="bbbbbb"]'); $oldnode = $nodelist->item(0)->getElementsByTagName('description')->item(0); $newnode = $dom->importNode($doc->documentElement, true); $oldnode->parentNode->replaceChild($newnode, $oldnode); $dom->save(fichier.xml);
Partager