PHP time () функция, возвращающая случайный сдвиг времени на час - PullRequest
3 голосов
/ 05 сентября 2010

У меня есть некоторый код PHP, который вставляет дату в таблицу:

INSERT INTO tblEventLog VALUES  ...  date("Y-m-d H:i:s",time())  ...

Результаты этого, как правило, верны, но случайная дата отстает на час:

315070  05-Sep-10 18:08
315069  05-Sep-10 18:07
315068  05-Sep-10 18:07
315067  05-Sep-10 18:06
315066  05-Sep-10 18:06
315065  05-Sep-10 17:04
315064  05-Sep-10 18:01

Что может быть причиной этого? Существует только один сервер.

EDIT:
Использование NOW () сработало!
Проблема заключалась в том, что одна из страниц PHP меняла часовой пояс (при создании RSS-канала), а функция PHP time () подбирала его. Использование базы данных для установки фиксированного времени вещей.

1 Ответ

2 голосов
/ 05 сентября 2010

Я не уверен, что может вызвать это. Я бы порекомендовал переключить тип данных столбца на DATETIME, и если вы просто вставляете текущее время, используйте функцию MySQL NOW() вместо того, чтобы фиксировать время в PHP. Чем больше вы можете сделать непосредственно в базе данных, тем лучше. Это может полностью устранить эту ошибку.

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