我有一个带有子节点的xml文件,其名称如下:
<element id="13" size="normal" category="blog" url="Formlabs-3D-printer">
<date>April 12, 2013</date>
<tag tag="printer printing 3d formlab kickstarter"></tag>
<urlpage url="single.php?blog_no=12"></urlpage>
<urlimage src='./Post thumbnail images/aisa_big.png'></urlimage>
<sliderimages>
<image src='./Post thumbnail images/aisa_big.png'></image>
<image src='./Post thumbnail images/01.png'></image>
<image src='./Post thumbnail images/tape-dribbble.jpg'></image>
<image src='./Post thumbnail images/pissed_pickle.png'></image>
</sliderimages>
</element>
要读取我的xml文件,我实际上是这样做的:
<?php
if (isset($_GET["page"])) {
$i = $_GET["page"];
$xml = simplexml_load_file('data.xml');
$element = $xml->xpath(" //element[@url='$i'] ")[0];
}
?>
使用此代码,我回显了所需<element>
的某个节点。它很棒!
我想回显<sliderimages>
内的每个图像节点。
但我有一些问题要在其中循环......
这是我的循环代码(编辑):
<?php
foreach($element->sliderimages as $sliderimages) {
echo "<div class='Slide'><img src='";
echo $sliderimages->image['src'];
echo "'/></div>";
}
?>
使用此代码,它仅回显第一个子节点....
对不起我的英语,我是法国人。
答案 0 :(得分:1)
您正在循环<sliderimages>
,并且您的输入XML中只有一个。
尝试(未测试):
foreach($element->sliderimages->image as $image) {
...
}