à partir de ce fichier xml Je souhaite supprimer le noeud image en fonction de l'attribut ID. J'ai écrit du code php mais cela ne fonctionne pas.Supprimer le noeud de XML selon l'attribut
<gallery>
<organizate>
<organization w="3" h="1" space="17"/>
<organization w="4" h="2" space="17"/>
<organization w="6" h="3" space="7"/>
</organizate>
<pictures>
<picture target="events/preview/10picture1.jpg" title="test1" movie="" text="test1" link="events_calender.php" id="38"/>
<picture target="events/preview/8picture7.jpg" title="test2" movie="" text="cxvxc" link="events_calender.php" id="39"/>
<picture target="events/preview/5picture10.jpg" title="test3" movie="" text="test3" link="events_calender.php" id="40"/>
</pictures>
</gallery>
code PHP
$doc = new DOMDocument();
$doc->formatOutput = TRUE;
$doc->preserveWhiteSpace = FALSE;
$xPath = new DOMXPath($doc);
$doc->load('../Event_gallery.xml');
$query = sprintf('//pictures[./picture[@id="%s"]]', 38);
foreach ($xPath->query($query) as $node) {
$node->parentNode->removeChild($node);
}
$doc->save('../Event_gallery.xml');
Je pense que XPath ne fonctionne pas correctement. le contrôle ne va pas dans le foreach
une chose que je veux supprimer l'image de noeud seulement pas des images. Cette fois-ci, effacez les images. Peux-tu aider? – rajanikant
@rajanikant voir la mise à jour – Gordon