这应该很简单,但我想我正在遇到心理障碍 - 我有一个mysql数组,其中包含每个事件的日期和名称。我希望每个单独的“日”都有页眉和页脚。所以它看起来像这样:
New Day
Event 1
Event 2
End Day
New Day
Event 3
Event 4
End Day
到目前为止,我的代码看起来像这样,但我只能显示标题:
$day = null;
foreach($events as $event) {
if ($day != date('d', strtotime($event->date))) {
echo "New day:<br />";
}
echo $event->name;
$day = date('d', strtotime($event->date));
}
所以基本上我循环并将“$ day”与$ event-&gt; day进行比较...这解决了标题,但是我应该怎样做以显示页脚?
答案 0 :(得分:1)
只需在编写标题时写入页脚,然后在结尾处写一个页脚。
基本伪代码:
$day
设置为第一个值$day
与当前事件的日期不同,请编写页脚,然后是标题$day
变量答案 1 :(得分:0)
你可以通过几个小的补充来实现这个技巧:
foreach($events as $event) {
if ($day != date('d', strtotime($event->date))) {
if ($day !== null) { // ADDED THIS
echo "End day<br />";
}
echo "New day:<br />";
}
echo $event->name;
$day = date('d', strtotime($event->date));
}
if ($day !== null) { // ADDED THIS
echo "End day<br />";
}
这里的想法是“结束日”总是在“新的一天”之前,有两个例外:
这两个条件直接对应于这两种情况:如果你已经看到任何“新的一天”输出(可以非常方便地检查),那么你想要在“新的一天”和“结束日”之前,并结束输出方式相同。