Как я могу обработать "datetime" в mongoDB с помощью php? - PullRequest
4 голосов
/ 11 августа 2011

Есть ли способ сохранить дату и время? Так что я могу вычислить разницу во времени между двумя датами и запросом с диапазоном даты и времени.

Также я хочу указать точное время. пр) 12:00:00 01 января 2001 года

Стоит ли хранить строку времени и даты-даты в формате Unix вместе с часовым поясом или другими лучшими способами решения этой проблемы?

Ответы [ 2 ]

6 голосов
/ 11 августа 2011

Вы должны использовать класс MongoDate для хранения дат в MongoDB.

Из руководства ...

MongoDB сохраняет даты в миллисекундах после эпохи,Это означает, что даты не содержат информацию о часовом поясе.Часовые пояса должны храниться в отдельном поле, если необходимо.

. Вы можете преобразовать их в DateTime объекты, извлекая свойство sec и используя его в DateTime::setTimestamp().Также см. DateTime::setTimezone()

0 голосов
/ 11 августа 2011

Если у вас есть приложение, которое имеет дело с разными часовыми поясами, я преобразую все даты в часовой пояс приложения, прежде чем сохранять их в БД.Таким образом, вы можете сделать правильные расчеты.Если вам необходимо вернуться к исходному часовому поясу во время применения, сохраните также имя исходного часового пояса, и вы сможете пересчитать обратно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...