如何使用xpath/php获取xml文件中的节点名称?
我有一个很大的xml文件,我需要打印每个条目,每个条目都有一个特定的名称空间及其节点的名称(使用PHP) 例如,给定以下xml结构:如何使用xpath/php获取xml文件中的节点名称?,php,xml,xpath,xmlnode,Php,Xml,Xpath,Xmlnode,我有一个很大的xml文件,我需要打印每个条目,每个条目都有一个特定的名称空间及其节点的名称(使用PHP) 例如,给定以下xml结构: <file> <myNamespace:node1>entry1</myNamespace:node1> <myNamespace:node2>entry2</myNamespace:node2> ... [any other nodes here]
<file>
<myNamespace:node1>entry1</myNamespace:node1>
<myNamespace:node2>entry2</myNamespace:node2>
... [any other nodes here] ...
</file>
入口1
入口2
... [此处的任何其他节点]。。。
我想为带有myNamespace名称空间的xml文件中的每个节点打印一个元组[node1,entry1]、[node2,entry2]等等。问题是,我不知道如何获取节点的名称(“node1”、“node2”等等),我只获取条目。现在我使用的代码是:
foreach($xml->xpath('myNamespace:*') as $value) {
echo $value.'<br />';
}
foreach($xml->xpath('myNamespace:')作为$value){
回显$value.“
”;
}
我读了一些关于name()和local-name()函数的内容,但我无法让它工作:(
谢谢您的帮助!您应该使用
getName()
-尝试以下方法:
foreach($xml->xpath('myNamespace:*') as $value) {
echo $value->getName().'='.$value.'<br />';
}
foreach($xml->xpath('myNamespace:')作为$value){
echo$value->getName().'='.$value'.
;
}