要合并来自不同DomDocuments的XML,可以使用以下步骤:
以下是一个示例代码:
<?php
// 创建一个新的DomDocument对象
$dom = new DomDocument();
// 导入原始DomDocument中的根节点和子节点
$doc1 = new DomDocument();
$doc1->loadXML('<root1<child1>value1</child1></root1>');
$root1 = $doc1->documentElement;
$child1 = $root1->getElementsByTagName('child1')->item(0);
$doc2 = new DomDocument();
$doc2->loadXML('<root2<child2>value2</child2></root2>');
$root2 = $doc2->documentElement;
$child2 = $root2->getElementsByTagName('child2')->item(0);
// 使用importNode()方法将根节点和子节点导入到新的DomDocument中
$importedRoot1 = $dom->importNode($root1, true);
$importedChild1 = $dom->importNode($child1, true);
$importedRoot1->appendChild($importedChild1);
$importedRoot2 = $dom->importNode($root2, true);
$importedChild2 = $dom->importNode($child2, true);
$importedRoot2->appendChild($importedChild2);
// 使用appendChild()方法将导入的根节点和子节点添加到新的DomDocument中
$dom->appendChild($importedRoot1);
$dom->appendChild($importedRoot2);
// 使用saveXML()方法将新的DomDocument对象保存为XML字符串
$mergedXML = $dom->saveXML();
echo $mergedXML;
?>
输出结果:
<?xml version="1.0"?>
<root1<child1>value1</child1></root1><root2<child2>value2</child2></root2>
这样,我们就可以将来自不同DomDocuments的XML合并成一个XML字符串。
领取专属 10元无门槛券
手把手带您无忧上云