0

我有一个大的 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() 函数的东西,但我无法让它工作:(谢谢你帮助我!

4

1 回答 1

1

您应该使用getName()- 尝试类似:

foreach($xml->xpath('myNamespace:*') as $value) { 
    echo $value->getName().'='.$value.'<br />'; 
} 
于 2012-08-06T16:13:49.717 回答