例如,伦敦,里斯本和都柏林都有相同的时间:
date_default_timezone_set('Europe/London');
echo date('D, d M Y H:i:s P');// Wed, 30 Dec 2015 13:30:51 +00:00
date_default_timezone_set('Europe/Lisbon');
echo date('D, d M Y H:i:s P');// Wed, 30 Dec 2015 13:30:51 +00:00
date_default_timezone_set('Europe/Dublin');
echo date('D, d M Y H:i:s P');// Wed, 30 Dec 2015 13:30:51 +00:00
如果时间相同,这些时区之间是否存在隐藏的差异?喜欢:日光,任何特殊的计算,任何特定的功能都会给出不同的结果,等等。或者它会完全一样吗?
我问这个是因为,例如,在巴林'Asia/Bahrain'
它是+ 03:00,而在卡塔尔'Asia/Qatar'
它也是+ 03:00,如果我把它设置为巴林或卡塔尔,它真的会有所不同吗?
答案 0 :(得分:2)
是的,各个时区之间存在很多差异。 PHP使用IANA / Olson时区数据库,也称为TZDB。您可以阅读有关tz数据库的更多信息:
特别是,您可以看到每个区域都有唯一的历史记录。虽然今天某些值可能相同,但它们可能在过去有所不同,要么偏离UTC,要么从一个偏移转换到下一个(对于DST和其他原因),以及每个时段使用的缩写。
例如,以下是指向您询问的区域的tzdb条目的链接。从历史上看,你会发现它们彼此截然不同。
答案 1 :(得分:-2)
没有... 他们是一样的......
PHP使用时区来计算日期和时间的差异。