如何使用 xpath/php 获取 xml 文件中的节点名称?
Posted
技术标签:
【中文标题】如何使用 xpath/php 获取 xml 文件中的节点名称?【英文标题】:How to get the name of a node in a xml file using xpath/php? 【发布时间】:2012-08-06 14:54:46 【问题描述】:我有一个大的 xml 文件,我需要打印具有特定命名空间及其节点名称的每个条目(使用 php)。
例如,给定以下 xml 结构:
<file>
<myNamespace:node1>entry1</myNamespace:node1>
<myNamespace:node2>entry2</myNamespace:node2>
... [any other nodes here] ...
</file>
我想为带有 myNamespace 命名空间的 xml 文件中的每个节点打印一个 [node1, entry1], [node2, entry2] 等元组。问题是,我不知道如何获取节点的名称('node1'、'node2'、...),我只获取条目。现在我正在使用这个代码:
foreach($xml->xpath('myNamespace:*') as $value)
echo $value.'<br />';
我读过一些关于 name() 和 local-name() 函数的内容,但我无法让它工作:( 谢谢你帮助我!
【问题讨论】:
【参考方案1】:您应该使用getName()
- 尝试类似:
foreach($xml->xpath('myNamespace:*') as $value)
echo $value->getName().'='.$value.'<br />';
【讨论】:
以上是关于如何使用 xpath/php 获取 xml 文件中的节点名称?的主要内容,如果未能解决你的问题,请参考以下文章