mysql время преобразования php разные на разных серверах

У меня проблема с часовым поясом. Я получаю данные из mysql.

и хотите конвертировать в соответствии с заданным часовым поясом, скажем, время возврата данных MySQL

2014-05-20 16:32:52

и вот мой код

$dateTime = new DateTime($driverPickUpTime);
$dateTime->setTimezone(new DateTimezone('Asia/Riyadh'));
$temp = $dateTime->format(CNOC_DATE_TIME_FORMAT);

проблема заключается в том, что этот код возвращает разное время на разных серверах, например на dev и live, при одинаковом соединении с БД разница в 2 часа. я хочу одно и то же время на обоих серверах

0

Решение

new DateTime() принимает часовой пояс в качестве второго параметра. Предоставляя часовой пояс, который хранится в базе данных, вы всегда должны получить правильный результат:

$dateTime = new DateTime($driverPickUpTime, new DateTimeZone( /*enter DB timezone here*/ ));
1

Другие решения

Я предлагаю вам получить время из mysql в формате UTC .. см. Mysql UTC_TIME и UTC_DATE Вот а затем переключать часовые пояса с помощью PHP

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector