Я пытаюсь интегрировать функции даты и времени PHP в мои приложения. Что у меня сейчас работает:
- Каждый раз сохраняется в базе данных как Unix отметка времени
- Каждый раз, когда все манипуляции выполняются с использованием отметки времени
- . только когда он существует в удобном для пользователя формате, это правильно, когда он отображается пользователю
Да, я знаю, MySQL имеет внутренний примитивный объект даты и времени, но я не до конца понимаю как это работает, и мне кажется, что в этом формате время накапливать боль просто невозможно.
Я также написал свою собственную очень простую библиотеку часовых поясов, состоящую из буквальных (-12, 11) часовых смещений с некоторым понятным именем, назначенным для каждое из смещений. Предполагается, что позже это будет заменено полноценной библиотекой часовых поясов, потому что я знаю, как надо создавать новую библиотеку часовых поясов (https://www.youtube.com/watch?v=-5wpm-gesOY). Я попробовал внутреннюю библиотеку часовых поясов PHP, и все, кажется, работает отлично.
Существует канонический список часовых поясов, предоставленный PHP, доступ к которому можно получить по адресу DateTimeZone::listIdentifiers()
. Я ожидаю, что PHP сама свяжется с некоторой внешней базой данных о временном хранении, чтобы динамически менять часовые пояса, если какая-либо страна изменит данные своего часового пояса. Мой вопрос, это на самом деле происходит? Если это произойдет, есть ли гарантия, что указанный c часовой пояс (скажем, America/Guatemala
) все еще будет распознаваться PHP с течением времени и не выдаст ошибку при изменении часовых поясов?