将SimpleXML节点添加到SimpleXML

问题描述:

我有两个SimpleXML对象。我如何添加一个对象作为另一个对象的子元素。将SimpleXML节点添加到SimpleXML

请注意,这不能用addChild方法完成,因为它会在添加之前将给定值转换为字符串。

我发现SimpleXML和DOM可以在相同的数据上并行使用。我不得不通读大量的手册页。毕竟我发现这个解决方案:

$dom_doc = dom_import_simplexml($node1)->ownerDocument; 
$dom_node2 = dom_import_simplexml(new SimpleXMLElement($node_str)); 
$node2 = $dom_doc->importNode($dom_node2, TRUE); 
$node_parent = $dom_doc->getElementsByTagName('Name-of-adding-point'); 
$node_parent->item(0)->appendChild($node2); 

有趣的是,SimpleXML和DOM可以在相同的数据上并行使用。没有必要一直向前转换。有关详细信息,请阅读http://au.php.net/manual/en/function.dom-import-simplexml.php#89402