Twitter时区&;created_at(utc-time)值来计算用户所在的时区


Twitter timezone & created_at (utc time) values to calculate what time zone the user is in

我试图根据给定tweet对象中的time_zone或created_at值来估计twitter用户的位置。然而,我遇到的所有created_at值似乎都只是在一个毫无意义的本地化时间中,而且它们提供的时区并不是最有用的格式

示例推特

"created_at":"Thu Jun 02 14:41:24 +0000 2011"
"time_zone":null

"created_at":"Sun Jan 09 05:03:52 +0000 2011"
"time_zone":"Mountain Time (US & Canada)"

这两个时间都不是UTC时间,时区也不是世界其他地区的任何特定标准格式

我可能会觉得很烦人,我又累又热,找这个解决方案太久了:|

谢谢,

Andy

这个答案详细介绍了如何将Twitter日期转换为PHP可以使用的日期;简介如下。

strtotime("dateString");进入本地PHP日期格式,然后可以使用date()函数按照你想要的方式打印出来。

至于时区,您可以使用user对象的utc_offset属性的值来计算它。例如,我的配置文件的utc_offset是:

"utc_offset":-21600

只要把这个值除以3600,就会得到-6,这是美国中部时区。这些将是绝对偏移,不会改变时区是否符合夏令时。