在PHP脚本/ Web应用程序中,我需要记录任何历史时间和日期并将其转换为GMT或UTC。我会知道与每个时间和日期相关的纬度和经度坐标,所以也许我可以从某种程度上推导出时区。
我隐约知道奥尔森或者''数据库,但我不确定程序性审讯的可用程度,或者它与PHP5的结合可以在多大程度上回应我的任务。
据我所知,这个tz数据库对于1970年以后的数据只是非常准确,并且它对早期日期进行了近似。如果方法在1970年之前可能容易出错,那么至少我可以将这种情况标记为可疑结果。
答案 0 :(得分:0)
首先,使用方法listed here之一获取所提供的纬度/经度的TZ数据库标识符。
然后,如果TZDB涵盖了日期,则可以使用内置的PHP方法进行转换。如果那些失败,那么你有两个选择:
您可以使用TZDB中该时区的本地平均时间(LMT)值来获取包含它们的条目。
您可以使用经度计算确切位置的当地太阳时间。
任何一个选项都会对在给定时间如何在该地点实际保留当地时间作出重大假设。