Есть похожие вопросы, но я не смог найти ни одного, относящегося к конфигурации Doctrine2, так что вот...
Я перечитал эта страница с описанием часовых поясов для Doctrine2, и я просто хочу уточнить, потому что неясно, как на самом деле это использовать: http://doctrine-orm.readthedocs.org/en/latest/cookbook/working-with- datetime.html
Я хочу хранить дату и время в формате UTC, чтобы каждый пользователь мог иметь связанный часовой пояс в зависимости от своего местоположения, но данные хранятся в общем виде.
По сути, это данные о часах работы магазина (например, открытие в 9 утра и закрытие в 18:00).Магазин будет отслеживать свой часовой пояс, поэтому, когда человек в магазине устанавливает время «открытия», он имеет дело с часовым поясом магазина, время преобразуется в UTC и сохраняется в базе данных. Затем, когда другой пользователь просматривает часы работы магазина, он увидит время работы либо в своем часовом поясе, либо в часовом поясе магазина. Это не имеет значения, потому что у меня есть время в формате UTC, поэтому я могу преобразовать его в любой часовой пояс.
Документы Doctrine показывают такой пример:
class UTCDateTimeType extends DateTimeType
{
// ...
}
Но не сказано, как его использовать. Должен ли я объявлять столбцы как «UTCDateTime» вместо «DateTime»? Где должен жить этот класс, чтобы Doctrine знала о существовании типа?