2

twitter API 以 UTC 时间提供所有推文。您还可以获取登录用户的 UTC 偏移量和“时区”:

例如

created_at = Mon Jun 11 13:17:11 +0000 2012
utc_offset = -18000
time_zone = 东部时间(美国和加拿大)

我将 created_at 时间转换为时间戳然后添加 utc_offset 没有问题,但 utc_offset 不考虑夏令时。所以在 DST 期间,我所有的时间都减少了 1 小时。

另一个问题是 Twitter API 提供的 time_zone 值与 php 时区格式 (http://www.php.net/manual/en/timezones.america.php) 不匹配。

有没有人知道如何考虑 DST 以向用户显示准确的本地时间?

我开始认为也许使用客户端脚本来转换 UTC 时间是我最好的选择。

4

1 回答 1

0

我想你是对的。你真的只有两个选择:

  • 手动创建一个数组(除非其他人已经在某个地方为您完成了这项工作..),其中包含 Twitter API time_zone 字符串和索引以及 PHP 等效值作为值,或者
  • 使用简单的 JavaScript 在客户端修改标准化的时间字符串。

我知道我更喜欢什么。

这篇文章的第二个答案有一个很好的例子,用于 javascript
Parsing Twitter API Datestamp

于 2012-06-13T14:50:12.343 回答