Во время исследования часовых поясов я нашел этот интересный пост на форуме GeoNames :
rawOffset gives the fixed timezone.
dstOffset gives the civil time offset from GMT on July 1st
gmtOffset gives the civil time offset from GMT on January 1st
В южном полушарии, например, для Чили
(http://ws.geonames.org/timezone?lat=-33.46912&lng=-70.641997) у нас есть
следующие значения:
rawOffset = -4 indicating the timezone
dstOffset = -4
gmtOffset = -3, which means that daylight saving time is in use in January.
В северном полушарии, например, в Нидерландах
(http://ws.geonames.org/timezone?lat=51.589322&lng=4.774491):
rawOffset = 1
dstOffset = 2
gmtOffset = 1, indacting that daylight saving time is in use in July.
Это не первый раз, когда я rawOffset
вижу, этот SO-ответ (на Java) также полагается на него.
Моя цель - использовать необработанное смещение для создания выпадающего меню часового пояса, показывающего смещения UTC для каждой группы городов, прямо сейчас Я перечисляю все переходы для часового пояса и использую смещение не DST, но пост, о котором я упоминал выше, предполагает, что это неправильно для южного полушария.
РЕДАКТИРОВАТЬ: http://download.oracle.com/javase/1.4.2/docs/api/java/util/TimeZone.html#getRawOffset%28%29
Марк из GeoNames сказал мне, что они получают необработанное смещение с помощью этого метода Java.
Любой мастер Java знает, как они это делают? Или где я могу просмотреть их исходный код getRawOffset()
?
Любые идеи о том, как я могу получить необработанное смещение в PHP?