我正在尝试通过 XML 文件将详细信息显示为回显。它显示了一些细节,但不是全部。
我已经尝试了几种方法来做到这一点,任何帮助都会很棒!
这是 XML 代码的片段。
<result>
<rowset name="TestGroups" key="groupID" columns="groupName,groupID">
<row groupName="Group 1" groupID="123">
<rowset name="subGroup" key="typeID" columns="subgrName,groupID">
<row subgrName="Sub Group A" groupID="123">...</row>
<row subgrName="Sub Group b" groupID="123">...</row>
</rowset>
</row>
<rowset name="TestGroups" key="groupID" columns="groupName,groupID">
<row groupName="Group 2" groupID="456">
<rowset name="subGroup" key="typeID" columns="subgrName,groupID">
<row subgrName="Sub Group C" groupID="456">...</row>
<row subgrName="Sub Group D" groupID="456">...</row>
</rowset>
</row>
<result>
目标是输出带有回声的信息。列出组,然后是每个子组。
以下是当前 php 代码的片段:
$string = file_get_contents("Calls the XML FILE");
$xml = new SimpleXMLElement($string);
$xml_short = $xml->result->rowset->row ;
$xml_short2 = $xml->result->rowset->row->rowset->row ;
foreach ($xml_short as $row ) {
echo $row{'groupName'};
foreach ($xml_short2 as $row2 ) {
echo $row{'subgrName'};
}
}
当前输出:
Group 1
Group 2
我需要的输出是:
Group 1
Sub Group A
Sub Group B
Group 2
Sub Group C
Sub Group D
我认为我走在正确的轨道上。这个想法是返回每个组。循环以获取子组,然后转到下一个组并重复,直到全部完成。
我尝试了几种不同的方法,但似乎都失败或无法正常工作。因此,任何建议将不胜感激。