SimpleXMLElements でこれを行う方法はないと判断しました。私は PHP DOMDocument マニュアルを読んでいて、反復でそれを行うことができると思いますが、それは非効率的です。私に起こっていないより良い方法はありますか?
疑似コードっぽい反復ソリューション:
// two DOMDocuments with same root element
$parent = new ...
$otherParent = new ...
$children = $parent->getElementByTagName('child');
foreach ($children as $child) {
$otherParent->appendChild($child);
}
わかりやすくするために、次のような 2 つの XML ドキュメントを用意しています。
<parent>
<child>
<childOfChild>
{etc, more levels of nested XML trees possible}
</childOfChild>
</child>
<child>
<childOfChild>
{etc, more levels possible}
</childOfChild>
</child>
</parent>
そして、私は次のような出力を望みます:
<parent>
{all children of both original XML docs, order unimportant, that preserves any nested XML trees the children may have}
<parent>