我正在尝试使用simplXML
访问属性以下是我的XML格式示例:
<xml>
<config>
<anothernode></anothernode>
<anothernode></anothernode>
<anothernode></anothernode>
<anothernode></anothernode>
<anothernode></anothernode>
<popup name="rory" type="y" />
<popup name="joe" type="z" />
<popup name="pat" type="u" />
<popup name="mary" type="v" />
</config>
</xml>
这是第一个弹出名称,即“Rory”:
echo "exported: " . $xml->config->popup['name'] . "<br >";
这是第一种类型的回声,即“y”
echo "exported: " . $xml->config->popup['type'] . "<br >";
我试图循环遍历所有这些并让所有的值如此生病有类似的东西
罗里 - y 乔 - z Pat -u 玛丽 - v
我的蹩脚尝试就像下面这样,但是我尝试过的其他变种也没有,我刚刚开始学习simpleXML而且还没有完全了解它。
foreach($xml->config->popup['name'] as $node => $key){
//
echo $node . " - ". $xml->config->popup['$key']['type'] . "<br />";
}
现在,如果xml结构更好并且弹出元素位于主弹出元素下,我可以使用children()选项循环浏览每个弹出窗口并访问它,但是这个不寻常的格式在XML中工作似乎没有我可以找到互联网上的任何例子,可以告诉我如何在foreach循环中访问它们。有什么想法吗?
答案 0 :(得分:1)
您需要在popup
节点上循环,例如
foreach ($xml->config->popup as $popup) {
echo $popup['name'], ' - ', $popup['type'], '<br>';
}
演示 - http://codepad.viper-7.com/HElyiA(我还修复了你的XML)