PHP XML选择节点而不命名它

时间:2016-01-26 17:43:16

标签: php xml dom

我有一个位于外部服务器上的XML,回想一下这没问题 现在的问题是,我想选择一个路径,而不是命名它。

例如:

<data num_results="2">
   <node>
      <raw_text>
      </raw_text>
   </node>
</data>

我现在回想起来就是这样:

$xml = simplexml_load_file($link);
foreach($xml->data->node as $report) {
   process;
}

我想这样回忆一下:

$xml = simplexml_load_file($link);
foreach($xml->data->[something without naming it "node"] as $report) {
   process;
}

我该怎么做?

干杯!

1 个答案:

答案 0 :(得分:0)

*中使用 xpath 作为占位符:

$xml = simplexml_load_string($x); // assume XML in $x

foreach ($xml->xpath("/data/*") as $result) 
    echo $result->asXML();

输出:

<node>
  <raw_text></raw_text>
</node>

看到它有效:https://eval.in/508332

请注意,xpath方法返回SimpleXml个对象的数组。