要偏移的 PHP 时区名称
我该如何将时区名称(“亚洲/迪拜”,“欧洲/安道尔”等)转换为GMT偏移量(以小时为单位(甚至几秒钟,因为我可以从那里转换它)。
大多数人要求相反,但我需要从GeoNames提供的时区名称中获取时区偏移量。
我该如何将时区名称(“亚洲/迪拜”,“欧洲/安道尔”等)转换为GMT偏移量(以小时为单位(甚至几秒钟,因为我可以从那里转换它)。
大多数人要求相反,但我需要从GeoNames提供的时区名称中获取时区偏移量。
您可以使用以下内容
<?php
$timezone = 'Pacific/Nauru';
$time = new \DateTime('now', new DateTimeZone($timezone));
$timezoneOffset = $time->format('P');
?>
另一种选择是使用可用的 DateTimeZone::getOffset()
方法,该方法返回指定日期/时间时区偏移量(以秒为单位)。
$timezone = new DateTimeZone("Europe/Andorra");
$offset = $timezone->getOffset(new DateTime);