在PHP5中,我有一个DOMDocument($xmlDoc1
)。假设它的documentElement是:<root id="1" type=""/>
。我创建了一个新的DOMDocument $xmlDoc2
。
我需要做的是克隆$xmlDoc1
的documentElement(包含其属性,但不包括其子项),并将其用作$xmlDoc2
的documentElement。
在ASP中,你可以写:
XMLDoc2.DocumentElement = XMLDoc1.DocumentElement.CloneNode(False)
PHP DOM有cloneNode()
方法,但不允许将克隆节点附加到另一个文档。
我怎么能这样做?
答案 0 :(得分:2)
看看:
http://php.net/manual/en/domdocument.importnode.php
示例:
<?php
$dom = new DomDocument();
$dom->loadXml('<root attr1="a" attr2="b"><foo></foo></root>');
$dom2 = new DomDocument();
$dom2->appendChild(
$dom2->importNode($dom->documentElement->cloneNode(false), true)
);
header('Content-Type: text/xml; charset="UTF-8"');
echo $dom2->saveXml();
执行时: