Php无法访问XML元素

时间:2016-09-09 09:22:28

标签: php xml

我有这个XML文件:

<hostgrouplist>
  <recordcount>68</recordcount>
  <hostgroup id="530">
   <instance_id>1</instance_id>
   <hostgroup_name>Track2_Web</hostgroup_name>
    <members>
     <host id="451">
      <host_name>webeu1-2</host_name>
     </host>
     <host id="457">
      <host_name>webeu2-2</host_name>
     </host>
     <host id="463">
      <host_name>webus-2</host_name>
     </host>
    </members>
   </hostgroup>
  </hostgrouplist>

我想列出主机组的所有主机名,但我无法通过<member>标记。

目标是循环执行此操作,但如果没有它,它甚至无法工作。

我尝试的最后一件事是:

$xml = simplexml_load_file ('http://localhost/file.xml');
echo $xml->hostgroup[0]->members->host[0]->host_name;

这不应该吗?你有解决方案吗?相关主题中的任何内容都没有帮助我,我认为它可能是主机标记中的id的问题

1 个答案:

答案 0 :(得分:0)

你的意思是这样的:

$xml = simplexml_load_file('file.xml');

foreach ($xml->hostgroup[0]->members->children() as $host) {
    echo $host->host_name.'<br/>';
}

输出:

webeu1-2
webeu2-2
webus-2