SimpleXML低级变量

时间:2013-11-12 14:23:55

标签: php xml simplexml

我正逐级使用simple_xml_load_file()解析文件。这是样本结构:

<person name="Joe Smith" ...>
   <info age="19">
     <height val="1.85" />
   </info>
   <info age="19">
     <weight val="82" />
   </info>
   <info age="19">
     <build val="14" />
   </info>
</person>
...

因为我正在解析我不会深入,因为我不需要。但我确实需要年龄,而不需要浏览每个信息标签。我需要<person>中包含的变量,只需要年龄。如何在没有其他循环的情况下进入年龄?

$persons=$dom->person;
foreach($persons as $person){
   $name=$person['name'];
   $age=????
}

1 个答案:

答案 0 :(得分:3)

这应该做的工作:

foreach($dom->person as $person){
   $name=$person['name'];
   foreach($person->info as $info) {
       echo $info['age'] . '<br>';
   }
}

或者,如果您想在特定位置获得一个年龄:

echo $person->info[0]['age']; // Gets age attribute of first <info> node