我有一个这样的XML结构:
<root>
<parent>
<child name='Child1' />
<child name='Child2' />
<subparent>
<child name='Child3' />
</subparent>
</parent>
<child name='Child4' />
<root>
使用 PHP simplexml
,我正在尝试获取所有"子"节点,无论级别如何,我想知道是否有快速功能,而不是扫描 XML 的每个节点。
当然,您需要做的就是在 XML 上使用xpath()
查询:
$xml = simplexml_load_string( $xml);
foreach( $xml->xpath( '//child') as $child) {
$attributes = $child->attributes();
echo $attributes['name'] . "n";
}
您可以从此演示中看到,这打印了:
Child1
Child2
Child3
Child4