加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用PHP DateInterval创建重复事件

发布时间:2020-12-13 18:11:12 所属栏目:PHP教程 来源:网络整理
导读:所以我花了很多时间研究如何最好地将重复发生的事件添加到我的日历应用程序中. 我想使用PHP DateInterval函数并制定下面的代码,尝试根据原始事件Start Date,Finish Date和EndDate of Recurrence创建一个定期事件. //user defined event start and finish dat
所以我花了很多时间研究如何最好地将重复发生的事件添加到我的日历应用程序中.

我想使用PHP DateInterval函数并制定下面的代码,尝试根据原始事件Start Date,Finish Date和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:sn" );
  $recurringEndDate = ?NOT SURE HOW TO PROCESS THE END DATE IN THIS START DATE FOREACH LOOP?

这应该有希望创建一个新的事件开始日期列表.但我还需要为我的定期事件定义新的结束日期.我该怎么做呢?我是否需要在事件开始日期foreach循环中处理此问题?

我的另一个问题是如何组合多个dateIntervals来处理每周一,周三和周五的重复?目前只有一个dateIntervals像下周五一样工作

谢谢你的帮助!

蒂姆

Thomas Planer为PHP 5.2提供了一个日期/日历递归库.它不是DateInterval,但似乎可以解决问题.请在 https://github.com/tplaner/When查看

我知道这是一个老问题,但也许有人会受益!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读