如何使用xpath/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]

我有一个很大的xml文件,我需要打印每个条目,每个条目都有一个特定的名称空间及其节点的名称(使用PHP)

例如,给定以下xml结构:

    <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'.
; }