Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

При выполнении скрипта через cron, не сходится время...

aSpectro Мыслитель (7814), закрыт 5 лет назад
При выполнении скрипта через cron, не сходится время. В чем суть, в php и на самом сервере время московское, но при выполнении скрипта через cron время в php выводит на 3 часа назад, т. е. если cron отработал в 00:00, то php выводит 21:00, вместо 00:00, в чем загвоздка?
Лучший ответ
Aljebro Просветленный (27088) 5 лет назад
Вероятно, скрипт работает по UTC или в зоне со смещением 0.
1) см. либо в php.ini http://php.net/manual/ru/datetime.configuration.php#ini.date.timezone
2) в самом скрипте date_default_timezone_set( 'UTC' );
используй часовую зону Europe/Moscow
только убедись, что /etc/localtime (Ubuntu) ссылается куда надо и время на сервере точно верное, с учетом этой зоны.

Московское время как раз UTC+3
Остальные ответы
Серега Профи (595) 5 лет назад
как ты время узнаешь, что 3 часа разницы?
aSpectroМыслитель (7814) 5 лет назад
результат работы приходит на почту
Серега Профи (595) ну так ты устанавливай запуск крон по московскому времени а не по местному.
ewe 2e¶ CoЛнЫшКоcBeTиТоЧеНЬяРкО* Высший разум (309824) 5 лет назад
Если сервер линюксоидный, то там время в 99% случаев стоит UTC, а вам где-то в каких-то неназванных вами настройках сказано выводить время для вашего часового пояса.
Благодаря тому, что в России теперь нет перехода на летнее/зимнее время, для Москвы разница как раз составляет 3 часа в любое время года.
Похожие вопросы