PHP: получите время для текущего региона - PullRequest
1 голос
/ 16 февраля 2011

У меня есть часовой пояс пользователя (он выбирает его из списка) У меня есть время в UTC (не текущее время), поэтому мне нужно что-то вроде GetTimeForRegion (время, часовой пояс) для PHP.Есть ли такие функции или библиотеки или сервисы?

Ответы [ 4 ]

8 голосов
/ 16 февраля 2011

вы можете использовать DateTime :: setTimezone (). Если ваша дата UTC является меткой времени UNIX, вы можете использовать такой код:

$date = new DateTime();
$date->setTimezone(new DateTimeZone('UTC'));
$date->setTimestamp(1297869844);
$date->setTimezone(new DateTimeZone('Europe/Paris'));

echo $date->format('Y-m-d H:i:s');
// Will print 2011-02-16 16:24:04
1 голос
/ 16 февраля 2011

дата ('r') или дата ('c') могут вам помочь.

echo date('r') отпечатки Thu, 16 Feb 2011 16:01:07 +0200

echo date('c') отпечатки 2011-02-16T16:01:07+02:00

0 голосов
/ 30 июля 2018

, пожалуйста, напишите это вместо:
$ date = date ("Ymd H: i: s", time ());

, поэтому Y означает год
m означает месяц
d означает день H, получаю часы от 0 до 24
ч, получаю часы от 0 до 12, я получаю минуты
с, получаю секунды

0 голосов
/ 16 февраля 2011

Вам нужно взглянуть на Дата / Время API в PHP. Я настоятельно советую вам избегать функций gmdate и более старых дат в php.

В вашем случае вы должны спросить пользователя о часовом поясе на основе Олсона.

Код Artefact2 сделает свое дело.

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