Я внедряю довольно простой календарь на веб-сайте, используя PHP и MySQL. Я хочу иметь возможность обрабатывать даты, которые повторяются бесконечно, и не уверен, что это лучший способ сделать это.
Для ограниченного по времени повторяющегося события, кажется, имеет смысл просто добавить каждое событие в пределах таймфрейма в мою таблицу БД и сгруппировать их с некоторой формой идентификатора рекурсии.
Но если нет предела частоте повторения события, лучше
а) помещать записи в БД для определенного периода времени (например, следующие 2 года), а затем периодически проверять и добавлять новые записи с течением времени. Проблема в том, что если кто-то смотрит на 3 года вперед, событие не будет отображаться
b) на самом деле нет записей для каждого события, но вместо этого, когда я проверяю свой php-код на события в течение указанного периода времени, рассчитываю, произойдет ли повторное событие в течение этого периода времени - проблема в том, что это означает, что не является конкретной записью для каждого события, которое, как я вижу, вызывает боль, когда я затем хочу связать другую информацию (посещаемость и т. д.) с этим событием. Также кажется, что это может быть немного медленно
Кто-нибудь пробовал любой из этих методов? Если так, как это получилось? Или есть какой-то другой хитроумный метод, который мне не хватает?