php 覆盖xml,php – 将多个xml合并为一个

嗨,我正在解析一个xml feed到一个数组,它的工作正常,但直到现在我只有一个xml feed但现在我有点卡在一点因为我需要将多个xml组合成一个然后解析整个xml到数组.在这里我提供一些示例代码我想要的实际内容.

Corporate1

Permanent1

XML2

Corporate2

Permanent2

XML3

Corporate3

Permanent3

合并我想要的XML作为输出

Corporate1

Permanent1

Corporate2

Permanent2

Corporate3

Permanent3

到目前为止,我已经尝试了下面的代码,它对我有用,但需要花费太多时间来生成组合output.xml.有没有其他方法可以通过更好的解决方案实现这一目标.

function simplexml_merge(SimpleXMLElement &$xml1, SimpleXMLElement $xml2) {

// convert SimpleXML objects into DOM ones

$dom1 = new DomDocument('1.0', 'UTF-8');

$dom2 = new DomDocument('1.0', 'UTF-8');

$dom1->loadXML($xml1->asXML());

$dom2->loadXML($xml2->asXML());

// pull all child elements of second XML

$xpath = new domXPath($dom2);

$xpathQuery = $xpath->query('/*/*');

for ($i = 0; $i < $xpathQuery->length; $i++) {

// and pump them into first one

$dom1->documentElement->appendChild(

$dom1->importNode($xpathQuery->item($i), true));

}

$xml1 = simplexml_import_dom($dom1);

}

$xml1 = simplexml_load_file("xml1.xml", 'SimpleXMLElement', LIBXML_NOCDATA);

$xml2 = simplexml_load_file("xml2.xml", 'SimpleXMLElement', LIBXML_NOCDATA);

simplexml_merge($xml1, $xml2);

$xml1->asXml('output.xml');

请告诉我实现这一目标的最佳方法是什么.

在此先感谢,非常感谢.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值