Проблема с часовым поясом - Plesk / Codeigniter - PullRequest
0 голосов
/ 22 сентября 2018

У меня проблема с часовым поясом.Я устанавливаю часовой пояс на VPS для Европа / Варшава (UTC + 2) , я устанавливаю в системе управления VPS Plesk часовой пояс на Европа / Варшава и когда я использую, например, время () в PHP, что возвращает неправильное время (-2 часа).Что делать?

1 Ответ

0 голосов
/ 22 сентября 2018

Есть действительно хороший комментарий на сайте документации PHP, потому что эта информация отсутствует в документации, но должна немедленно ответить на ваш вопрос.

Функция time () всегда возвращает метку времени, которая является часовым поясомнезависимый (= UTC).Для получения дополнительной информации посмотрите здесь .

Как уже прокомментировал Sammitch, вы не должны полагаться на функцию time().Существует удобный класс под названием DateTime, который вы можете использовать.

Ниже приведено несколько примеров:

$objDateTime = new DateTime();
//retrieve current Timezone
echo $objDateTime->getTimezone()->getName();

если ваш часовой пояс здесь не Europe/Warsaw, у вас есть две возможности для измененияих:

  1. измените его в вашем php.ini В вашем php.ini есть раздел [Date], и соответствующий параметр называется date.timezone.Просто установите date.timezone = Europe/Warsaw.

  2. , вы можете добавить Timezone к вашему текущему DateTime объекту.

Это будет выглядетькак:

$objDateTime->setTimezone(new DateTimeZone('Europe/Warsaw'));
echo $objDateTime->format('d.m.Y H:i:s');

И это все.

...