【发布时间】:2023-03-15 09:25:02
【问题描述】:
我想比较 PHP 中的两个 xml 文件(实际上是逐个过滤),一个 xml 文件包含例如“接口”数据,另一个包含接口(rule.xml),但元素较少,正是我想要的,并且想要获取两个xmls中的过滤数据。
第一个xml:
`<?xml version="1.0" encoding="UTF-8"?>
<data>
<interfaces>
<interface>
<name><!-- type: string --></name>
<type><!-- type: string --></type>
<mtu><!-- type: int32 --></mtu>
<interface>
</interfaces>
</data>`
第二个xml:
`<?xml version="1.0" encoding="UTF-8"?>
<data>
<interfaces>
<interface>
<name>interfacename</name>
<type>gigaeth</type>
<mtu>1500</mtu>
<counters>
<inBytes>17800</inBytes>
<inPackets>156000</inPackets>
<inErrors>850</inErrors>
</counters>
</interface>
</interfaces>
</data>`
所以我想要的结果是:
`<?xml version="1.0" encoding="UTF-8"?>
<data>
<interfaces>
<interface>
<name>interfacename</name>
<type>gigaeth</type>
<mtu>1500</mtu>
</interface>
</interfaces>
</data>`
【问题讨论】:
-
嗨,您看过 XML 模式和 DTD 吗?
-
我真的不明白你在这里想要达到什么目的。您想要来自第二个 xml 的数据,但元素较少? (跳过
counters标签?)如果可能请详细说明。 -
是的,我想通过第一个 xml 过滤第二个并保留相似的标签。