在PHP中从DOMNode创建DOMDocument

前端之家收集整理的这篇文章主要介绍了在PHP中从DOMNode创建DOMDocument前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我从某个源获取 XML字符串.我创建一个DOMDocument对象并将XML字符串加载到其中(使用DOMDocument :: loadXML()).然后我使用各种方法(例如DOMXPath)浏览XML文档,直到找到我想要的节点(当然是DOMNode).

这个节点有一堆后代,我想取整个节点(及其后代)并从中创建一个新的DOMDocument对象.我不知道该怎么做;我尝试创建一个新的DOMDocument并使用DOMDocument :: importNode(),但这似乎只有在DOMDocument中已经有一个主文档节点时才有效,在这种情况下它会将导入的节点作为主文档节点的子节点附加,这不是我想要的 – 我希望导入的节点成为DOMDocument主节点.

也许有一种更简单的方法(即更简单的方法提取原始XML的一部分,我想把它变成自己的文档),但我不知道.我是DOMDocument的新手,虽然我已经使用了SimpleXMLElement足以让它烦恼.

您还可以创建一个新的DOMDocument并在其上调用appendChild()以添加根节点:
$new = new DomDocument;
$new->appendChild($new->importNode($node,true));

这对我有用.

猜你在找的PHP相关文章