以下是如何替換節點的簡單範例
讓我們像這樣定義我們的 XML
<?php
$xml = <<<XML
<?xml version="1.0"?>
<root>
<parent>
<child>bar</child>
<child>foo</child>
</parent>
</root>
XML;
?>
如果我們想要替換整個 <parent> 節點,我們可以這樣做
<?php
$parent = new DomDocument;
$parent_node = $parent ->createElement('parent');
$parent_node->appendChild($parent->createElement('child', 'somevalue'));
$parent_node->appendChild($parent->createElement('child', 'anothervalue'));
$parent->appendChild($parent_node);
?>
接下來,我們需要找到舊的節點
<?php
$dom = new DomDocument;
$dom->loadXML($xml);
$xpath = new DOMXpath($dom);
$nodelist = $xpath->query('/root/parent');
$oldnode = $nodelist->item(0);
?>
然後我們導入並替換新的節點
<?php
$newnode = $dom->importNode($parent->documentElement, true);
$oldnode->parentNode->replaceChild($newnode, $oldnode);
echo $dom->saveXML();
?>
我們的新節點已成功導入
<?xml version="1.0"?>
<root>
<parent><child>somevalue</child><child>anothervalue</child></parent>
</root>