2012-06-11 28 views
2

Twitter API以UTC時間提供所有推文。您還可以獲取登錄用戶的UTC偏移量和「時區」:例如,Twitter API - 使用PHP確定當地時間

created_at =週一6月11日13時17分11秒+0000 2012
utc_offset = -18000
TIME_ZONE =東部時間(美國&加拿大)

我沒有問題的created_at時間轉換成一個時間戳和然後添加utc_offset,但utc_offset不考慮夏令時。所以在夏令時期間,我所有的時間都停了1個小時。

另一個問題是Twitter API提供的time_zone值與php時區格式不匹配(http://www.php.net/manual/en/timezones.america.php)。

有沒有人有關於如何考慮DST以向用戶顯示準確的本地時間的想法?

我開始思考也許使用客戶端腳本轉換UTC時間是我最好的選擇。

回答

0

我認爲你是對的。你真的只有2種選擇:

  • 手動創建一個數組(除非別人已經做了你的腿工作的地方..)持有Twitter的API TIME_ZONE字符串和指數和PHP等同值,或
  • 使用簡單的JavaScript修改客戶端的標準化時間字符串。

我知道我更喜歡什麼。

這個帖子上的第二個答案對的JavaScript
Parsing Twitter API Datestamp

一個很好的例子