我正在嘗試使用MySQL表中的數據製作一個時間表,該表中有每個事件的一天,開始和結束時間。在創建時間表時遇到問題
我現在的邏輯是這樣的。
查找與週一的所有事件,放在一個陣列週一 查找與週二的所有事件,放在一個陣列週二
等
然後我每個陣列上運行的每個循環去通過當天的每個時間段(9-5),並且如果它與當前事件匹配,則創建一個表格單元格,如果不創建並清空單元格,並且最後如果事件持續時間長於1 slott,則不放置任何東西。這裏是我上面的代碼:
function createTableEvent($day,$previousfinish)
{
$completeDay = '';
$day = explode(',',$day);
$ev = $day[0];
$start = $day[1];
$end = $day[2];
$event = "<div class=\"table_event\">$ev<br>Starts:$start<br>Ends:$end<br></div>";
$times= array('09','10','11','12','13','14','15','16','17');
//TIMES
foreach ($times as $time)
{
if($start == $time.":00" && $previousfinish == !)
{
$completeDay .= "<td class=\"$time\" colspan=\"$end\">
<div class=\"table_event\">$event</div></td>";
$previousfinish = $end;
}
else if($previousfinish > 1
{
}
else
{
$completeDay .= "<td class=\"$time\" colspan=\"1\"></td>";
}
}
return $completeDay;
}
的原因我想跳過電池如果超過1是因爲如果一個事件運行超過一個塊,我列跨度設定的時間事件,因爲如果前一個事件超過一個街區,它將不會再次放入一個單元格。
我的輸出適用於單小時事件,但不是當一天有說1 2小時事件和第2小時事件時。我的代碼仍然使應該爲空的時間的額外單元格。
任何輸入或幫助將是非常有用的