3

我敢肯定,这已经在这里被问过几次了,但我还没有找到一个像样的解决方案,或者了解做到这一点的最佳方法。

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

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

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

编辑:除了举办活动,永远不要停止重复,即生日?

任何帮助将不胜感激。

4

2 回答 2

6

You can interpret RRule strings on the client side with the Javascript library RRule.js like so:

var holidays = RRule.fromString("FREQ=WEEKLY;BYDAY=MO,FR;INTERVAL=5;UNTIL=20130130T230000Z");
var datesToHighlight = RRule.between( calendarViewStartDate, calendarViewEndDate);
于 2012-12-06T13:49:21.397 回答
1

我想这个答案对于海报来说太晚了,但对于其他浏览的人(比如我)来说,这个 PHP 库似乎很有希望。正如描述所说,它深受 rrule.js 的启发。

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

于 2013-12-05T14:53:41.657 回答