我创建了一个事件日历,允许用户添加事件。添加的事件允许每日,每周,每月(和每年)事件创建。
嗯,一切都很好,但是如果用户选择每周的活动(星期一,星期三,星期三......)它将无法正常工作,我的代码是
function recurringEvents($type, $interval, $date) {
$startdate = date('Y-m-d', strtotime($date));
$day = explode('-', $startdate);
$datetotime = mktime(0,0,0,$day[1], $day[2], $day[0]);
$dates = array();
//If interval type is daily
if($type == 'D') {
for($i=1;$i<$interval-1;$i++) {
$newdate = '+ '. $i .' day';
$dates[] = date('Y-m-d', strtotime($newdate, $datetotime));
}
}
//If interval type is weekly
if($type == 'W') {
for($i=1;$i<$interval;$i++) {
$newdate = '+ '. $i .' week';
$dates[] = date('Y-m-d', strtotime($newdate, $datetotime));
}
}
//If interval type is monthly
if($type == 'M') {
for($i=1;$i<$interval;$i++) {
$newdate = '+ '. $i .' month';
$dates[] = date('Y-m-d', strtotime($newdate, $datetotime));
}
}
//If interval type is yearly
if($type == 'Y') {
for($i=1;$i<$interval;$i++) {
$newdate = '+ '. $i .' year';
$dates[] = date('Y-m-d', strtotime($newdate, $datetotime));
}
}
return $dates;
}
如何存储用户选择的特定周事件
示例用户输入是,
start date : 2-5-2014
end date : 2-5-2014
Repeats: : Weekly
Repeat every: 2 weeks
Repeat on: Sunday , Friday , Saturday
Starts on: 2-5-2014
Ends: After 4 occurrencesOn
Summary: Every 2 weeks on Sunday, Friday, Saturday, 4 times