PHP时区getTransitions值得信赖吗?

时间:2010-10-27 20:23:53

标签: php timezone gmt

您是否曾通过getTransitions函数遇到任何关于PHP时区转换的问题?

我正在尝试将阿根廷日期转换为GMT。如果我查看转换数组,我会得到:

....
[63] => Array ( [ts] => 1287284400 [time] => 2010-10-17T03:00:00+0000 [offset] => -7200 [isdst] => 1 [abbr] => ARST )
[64] => Array ( [ts] => 1300586400 [time] => 2011-03-20T02:00:00+0000 [offset] => -10800 [isdst] => [abbr] => ART )
...
是什么意思,如果我没有错,从2010-10-17到2011-03-20阿根廷日期的秒数差异,与GMT相当,它将是-7.200(2小时)。 / p>

但现实是目前的偏差是四个小时。

拜托,我错过了什么? 对不起,如果看起来像家庭作业,但我在搜索问题之前已经搜索并尝试过很多东西。

感谢。

编辑: 感谢您的回复。我理解PHP转换是在PHP dll.s安装中硬编码的,所以如果任何国家政府决定改变他们的时间策略,那么getTransitions就会过时,除非你升级你的PHP安装(当你有一个生产环境或者使用共享时这不是那么容易的事情)主机)。

所以新问题,是否存在任何网络服务或动态API来了解特定时区的当前时间延迟(或未来延迟),例如http://worldtimeengine.com/api/但可能是免费的?

1 个答案:

答案 0 :(得分:1)

我不确定这是不正确的?

http://en.wikipedia.org/wiki/Time_in_Argentina

阿根廷国家通常都是UTC -3,他们有时会观察夏令时。哪个会使它成为UTC -2?

另一方面,文章指出他们目前没有观察夏令时,所以这会使他们保持在UTC-3(-10800)?您的时间数据库可能已经过时了吗?