Я ищу, чтобы добавить дерево xml к другому.Добавить дерево xml в другое дерево xml в PHP с помощью DOMDocuments
Например, я хочу следующий 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>
Я из идей, которые не невозможно читать, или не являются, казалось бы, тупо окольными.
Любая помощь будет оценена по достоинству. Заранее спасибо.