Vì vậy, tôi đã dành khá nhiều thời gian nghiên cứu cách tốt nhất để thêm các sự kiện lặp lại vào ứng dụng lịch của tôi.Sử dụng PHP DateInterval để tạo sự kiện lặp lại
Tôi muốn sử dụng hàm DateInterval của PHP và đã xây dựng mã bên dưới để thử và tìm hiểu cách tạo sự kiện lặp lại dựa trên các sự kiện gốc Start Date
, Finish Date
và EndDate of Recurrence
.
//user defined event start and finish dates
$eventStart = new DateTime('2011-01-31 09:00:00');
$eventFinish = new DateTime('2011-01-32 17:00:00');
//user defined event recurring end date
$endRecurring = new DateTime('2011-05-31 23:59:59');
//define for recurring period function
$begin = $eventStart;
$end = $endRecurring;
//define our interval
$interval = DateInterval::createFromDateString('next friday');
$period = new DatePeriod($begin, $interval, $end, DatePeriod::EXCLUDE_START_DATE);
//loop through and create new dates for recurring events
foreach ($period as $dt)
$recurringStartDate = $dt->format("l Y-m-d H:i:s\n");
$recurringEndDate = ?NOT SURE HOW TO PROCESS THE END DATE IN THIS START DATE FOREACH LOOP?
Điều này hy vọng sẽ tạo danh sách ngày bắt đầu sự kiện mới. NHƯNG Tôi cũng cần xác định ngày kết thúc mới cho các sự kiện lặp lại của mình. Làm thế nào để tôi làm điều này? Tôi có cần xử lý điều này trong vòng lặp sự kiện bắt đầu sự kiện không?
Câu hỏi khác của tôi là cách tôi có thể kết hợp nhiều dateIntervals để chăm sóc Repeat every Monday, Wednesday and Friday
? Hiện tại chỉ một số ngày tháng duy nhất đang hoạt động như next friday
Cảm ơn sự giúp đỡ của bạn!
Tim
Khi nào tuyệt vời và tôi hiện đang sử dụng nó! – Tim