我有一个简单的XML列表,其中包含日期(按时间顺序排列)。我找到了一种方法循环列表7次(1周)。
<?php
$xmldata=simplexml_load_file("dates.xml");
$i = 0;
foreach($xmldata->day as $day) {
if($i==7) break;
$i++;
echo "<p>Date: " . $day->date . "</p>";
echo "<p>Dayname: " . $day->content . "</p>";
}
?>
现在我遇到了问题,循环总是从XML文件的第一行开始,到7次后结束。但我想开始循环,
$xmldata->day->date = $currentday;
$currentday = date('d.m.y');
并继续列表中的下7个项目(天)。
XML(dates.xml)如下所示:
<schedule>
<day>
<date>01.03.17</date>
<information>Lorem ipsum</information>
</day>
<day>
<date>02.03.17</date>
<information>Lorem ipsum</information>
</day>
<day>
<date>03.03.17</date>
<information>Lorem ipsum</information>
</day>
...
</schedule>
谢谢!
答案 0 :(得分:1)
commnets之后的解决方案:
<?php
$xmldata=simplexml_load_file("dates.xml");
$i = 0;
$startfound = false;
foreach($xmldata->day as $day) {
if(!$startfound && $day->date!=date('d.m.y')) continue;
$startfound = true;
if($i==7) break;
$i++;
echo "<p>Date: " . $day->date . "</p>";
echo "<p>Dayname: " . $day->content . "</p>";
}
?>