PHP: сопоставить конкретную дату с повторяющимся правилом iCal - PullRequest
3 голосов
/ 09 октября 2011

Мне нужно создать простой календарь для встраивания в мое PHP-приложение.

По сути, у меня есть несколько повторяющихся событий, для которых известно правило повторения iCal (правило) (например: "FREQ = MONTHLY; INTERVAL ="2; BYDAY = SU "или" FREQ = WEEKLY; BYDAY = SU ").

В основном мне нужна функция, которая задала
_ событие iCal rrule
_ определенный день (например, 04 /10/2011)
возвращает логическое значение, сообщающее, включено ли событие в эту дату.

Очевидно, что я могу создать его сам, но это заняло бы много времени: есть ли надежная библиотекауже доступно для этого?

Спасибо,
Дан

1 Ответ

2 голосов
/ 09 октября 2011

Хотя я нахожусь в конце своего собственного календарного проекта и не использую iCal, возможно, это поможет.

Мой собственный опыт показывает, что я не смог найти какую-либо библиотеку, и я с нуля закодировал свой собственный бэкэнд.

Что касается внешнего интерфейса, я бы настоятельно рекомендовал вам использовать FullCalendar, это удивительный календарь, с которым вы можете делать. Все, что вам нужно, это сконцентрироваться на бэкэнде.

Для базы данных я бы пошел по пути, когда в событии будет только 1 строка базы данных, и если это событие изменяется, если оно повторяется, вы вносите изменения в существующее событие и создаете новое событие с изменением.

Для серверной логики в сочетании с fullcalendar он дает вам окно для работы. В этом окне я бы работал, когда происходит событие, и затем показывал, повторяется ли событие, а затем работает, когда оно должно быть показано в календаре. Это может быть немного сложным, но вы можете сделать это.

Я прилагаю фотографии того, что я сделал, к сожалению, этот проект не с открытым исходным кодом.

Добавить повторяющееся событие

Календарь с повторяющимися событиями

Изменить периодическое событие

Просмотр списка повесток дня

Приветствия

...