Как хранить повторяющиеся даты с учетом перехода на летнее время

Я храню события в моей базе данных. Я имею 'Начните' а также 'конец' дата и времяtickets_start» а также 'tickets_end» (для случая, когда продажи билетов действительно начинаются / заканчиваются - в отличие от начала / конца фактического события).

Пока что яМы создали методы, которые делают все интересные вещи, такие как преобразование даты / времени в GMT перед сохранением, а затем обратно в соответствующий часовой пояс для отображения.

m хранит часовой пояс в поле varchar со значениями типа "Америка / Триатлон».

Но - теперь мне нужно начать иметь дело, если пользователь хочет разрешить повторение событий. Я'мы делали это раньше, и этоне такая уж большая сделка, но никогда через несколько часовых поясов.

Сначала я думал, что этоНе было ничего страшного, но потом понял, что - если начальная дата начала была в июле (как пример), и она повторяется каждый месяц в течение года, то в какой-то момент переход на летнее время сделает так, чтобы преобразование из GMT было изменить время по-другому. Один месяц, при преобразовании 12:00, он изменит его на -5, а в следующий - на -4 из-за летнего времени.

Моя текущая мысль, что ябуду хранитьДСТ» tinyint (1) для определения того, были ли введены даты начала / окончания во время летнего времени, а затем создайте метод для изменения времени на час, если / когда это необходимо.

Но - подумал ябуду спрашивать здесь в надежде, может быть, тамс "нормальный" для этого или просто то, что яЯ не думаю о.

(cakephp 2.4.x)

Ответы на вопрос(1)

Ваш ответ на вопрос