@khodos_dmitry

Почему echo date('Y-m-d H:m:s'); из разных скриптов выводит разные результаты?

Из одного скрипта вызываю:
2020-04-04 07:22:45
Из другого, в соседней папке:
2020-04-04 10:22:45
Сервер находится в питере, то есть время должно быть: 2020-04-04 10:22:45
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ответы на вопрос 2
Проблема часового пояса в настройках php или конкретного скрипта.

Первое, выполните `php -i | grep timezone` в консоли. Там будет скорее всего UTC стоять. Если так, то вам нужно будет заменить на Europe/Moscow: `php --ini` покажет в консоли путь до php.ini файла, его нужно отредактировать (часто под рутом/администратором) строчку date.timeone = "Europe/Moscow"

Второе, что может быть, часовой пояс где-то выставлен в самом скрипте, тут нужно поискать по коду команду https://www.php.net/manual/ru/function.date-defaul...

Третье, может быть, вы эти скрипты запускаете разными php? Скажем, один в консоли, второй через веб-сервер (php-fpm)? Тогда у каждого из них свой php.ini и их нужно отредактировать по 1му варианту выше.
Ответ написан
Комментировать
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Часовой пояс Питера
UTC/GMT+3

Так что смотрите в скрипт. Возможно вы вызываете время в UTC, в общем проверяйте код

date_default_timezone_set('UTC');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы