我正在尋找將xml樹追加到另一個xml樹。使用DOMDocuments在PHP中將xml樹附加到另一個xml樹
例如,我想下面的XML:
<a>
<b>
<c/>
</b>
</a>
已經裝了以下XML:
<n:d xmlns:xsl="namespace">
<n:e>
<n:f/>
</n:e>
</n:d>
,使它看起來像這樣:
<a>
<b>
<c/>
<n:d xmlns:n="namespace">
<n:e>
<n:f/>
</n:e>
</n:d>
</b>
</a>
的代碼,我試圖做到這一點如下:
$doc1 = new DOMDocument();
$doc2 = new DOMDocument();
$doc1->loadXML($xml1);
$doc2->loadXML($xml2);
$node_To_Insert = $doc2->getElementsByTagName('d')->item(0);
$node_To_Be_Inserted_To = $doc1->getElementsByTagName('b')->item(0);
$node_To_Be_Inserted_To->appendChild($doc1->importNode($node_To_Insert));
echo '<pre>'.htmlspecialchars(print_r($doc1->saveXML(),true)).'</pre>';
目前的結果我從回聲得到:
<a>
<b>
<c/>
<n:d xmlns:n="namespace" />
</b>
</a>
我出這是不可能的閱讀,或不看似愚蠢迂迴的想法。
任何幫助,將不勝感激。先謝謝你。