Получить числовое смещение часового пояса из тектового названия пояса

Главные вкладки

Аватар пользователя xakudu xakudu 20 сентября 2016 в 12:03

В Друпале хранится часовой пояс пользователя в формате международного текстового названия этого пояса, к примеру Europe/Moscow или Pacific/Wallis.
Как из этого названия получить собственно смещение от Гринвича - +3 к примеру или -8 или же от текущего часового пояса?

Лучший ответ

Аватар пользователя PVasili PVasili 16 апреля в 0:37
1

Вдруг кому пригодится Smile

<?php
function getUTCoffset($timezone) {
  
$current      timezone_open($timezone);
  
$utcTime      = new DateTime('now', new DateTimeZone('UTC'));
  
$offsetInSecs =  timezone_offset_get($current$utcTime);
  return 
$offsetInSecs 3600;
}
?>

Комментарии

Аватар пользователя PVasili PVasili 16 апреля в 0:37
1

Вдруг кому пригодится Smile

<?php
function getUTCoffset($timezone) {
  
$current      timezone_open($timezone);
  
$utcTime      = new DateTime('now', new DateTimeZone('UTC'));
  
$offsetInSecs =  timezone_offset_get($current$utcTime);
  return 
$offsetInSecs 3600;
}
?>