我正在尝试创建一个返回给定机场代码(IATA / FAA)的UTC时区的
PHP函数.
该功能应该做的是这样的:
echo getTimezoneFromAirportCode("CPH"); // +1 echo getTimezoneFromAirportCode("CXI"); // +14
为了实现这个功能,我需要一个所有机场代码及其时区的列表.
通过搜索我找到了这个列表:https://sourceforge.net/p/openflights/code/HEAD/tree/openflights/data/airports.dat?format=raw(来源:http://openflights.org/data.html)
查看列表中的几个机场代码后,我发现有些数据不正确.例如,它将CXI列为UTC -12时区 – 根据this page不正确.
你们有没有人知道提供制作getTimezoneFromAirportCode函数所需数据的公共列表吗?
看到问题仍然存在,我想指出我自己的
timezone map files.为了您的特殊目的,IATA tzmap看起来很完美:
https://raw.github.com/hroptatyr/dateutils/tzmaps/iata.tzmap
显然,你必须从zoneinfo文件中查询有问题的偏移量(它取决于它可能随时间变化的日期),例如:用zdump(1).