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 に答える