如何存储和解析RRULE数据

时间:2012-07-26 00:27:16

标签: php date recursion calendar fullcalendar

我确信在这里已经有几次问过这个问题,但是我找不到合适的解决方案,或者了解最好的方法。

我有一个日历(使用jQuery FullCalendar)。我想在日历中实现重复结构。最好的方法是使用标准,例如iCal RRULE。

但是我想弄清楚的是,将它存储在MySQL数据库中的最佳方法是什么? 一个简单的(varchar字段),包含:RRULE:FREQ = DAILY; INTERVAL = 1; BYDAY = TU,WE,FR; UNTIL = 20110713T075959Z; WKST = SU

一旦我将其“存储”在数据库中,我将如何从数据库中“拉”数据以解析重复显示到我的日历上?

编辑:除了制作活动,永远不要停止重复,IE生日快乐?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:6)

您可以使用Javascript库RRule.js解释客户端的RRule字符串 像这样:

var holidays = RRule.fromString("FREQ=WEEKLY;BYDAY=MO,FR;INTERVAL=5;UNTIL=20130130T230000Z");
var datesToHighlight = RRule.between( calendarViewStartDate, calendarViewEndDate);

答案 1 :(得分:1)

我认为这个答案对于海报来说太晚了,但对于其他人浏览(像我一样),this PHP library似乎很有希望。正如描述所说,它受到rrule.js的启发。

编辑: 哦,我忘了链接到this library,它也处理递归日期,并且看起来也是可行的。