我在 wordpress 中为健身房创建了一个网站,他们想要一个时间表插件,他们可以在其中添加课程和时间。
我得到了时间表,它在正确的日期和时间显示正确的课程,但是他们还有另一个要求,当那个小时没有课程时,他们不想显示那个小时的表格行。这是一个例子:
Monday | Tuesday | etc
9.00
9.15 Fitness
9.30
9.45
10.00
10.15
10.45
11.00
11.15 Another lesson
在这个例子中,当它在 10.00 和 11.00 之间时没有课程。所以我只想显示 9.00 到 9.45 ,隐藏 10 小时的所有行,然后在 11.00 重新开始,所以它看起来像:
Monday | Tuesday | etc
9.00
9.15 Fitness
9.30
9.45
11.00
11.15 Another lesson
但是我不知道如何做到这一点,我已经编写了一段代码来收集时间表的数据,以及一段生成表格的代码。这是生成表的代码:
$table = '<table>';
$table .= '<thead>';
$table .= '<tr>';
$table .= '<th></th>';
foreach($this->arDays as $day => $id){
$table .= '<th>'.$day.'</th>';
// Display the days on top of the table.
}
$table .= '</tr>';
$table .= '</thead>';
$table .= '<tbody>';
foreach($arData['times'] as $time){
// I think here should be a check if we have to display the table rows,
// how ??
// Make a column with all the times
$table .= '<tr>';
$table .= '<td>'.date('H:i',$time).'</td>';
foreach($this->arDays as $day => $id){
// Then foreach time, foreach day check if there are lessons
$table .= '<td>';
// There is a lesson, display it in the timetable
if(!empty($arData[$day][$time])){
$arTimetable = $arData[$day][$time];
foreach($arTimetable as $oTimetable){
$table .= $oTimetable->oLesson->name;
}
}
$table .= '</td>';
}
$table .= '</tr>';
}
$table .= '</tbody>';
$table .= '</table>';
echo $table;
我在我认为我应该添加检查是否必须显示表格行的地方添加了评论。
我希望有人可以帮助我!
谢谢!!
编辑:
这就是我的数据数组每天的样子:
Array
(
[monday] => Array
(
[1382086800] => Array
(
)
[1382087700] => Array
(
)
[1382088600] => Array
(
Lesson Object
)
数组中的每一天都包含当天的所有时间,(12 小时/15 分钟)