質問編集履歴

3 type

piarokaren

piarokaren score 14

2017/09/15 20:05  投稿

Twitter Search API での投稿時間が1時間ずれる
- TwitterSearchAPIで取得した投稿の投稿時間をGMT→JSTに変換すると実際のTwitterで見た投稿時間より1時間進んでしまう
# 前提
- PHP 5 latest
- Twitter Search API (/search/tweets.json)
## 現象
- 取得したTweetのcreated_at(投稿時間)がGMTで返ってくるため日本時間に変換すると、実際にTwitterの画面上で見た時より+1時間された時間になる
- 変換の仕方は様々試した(date({format}, strtotime(created_at)やDateTime->setTimeZone()など)が、すべて+1時間されるため、JSTへの変換処理は間違えていないはず
## ぐぐって調査したところ…
- Twitterの画面の表示時間も、デフォルトだとカルフォルニア時間で表示されるが、日本のアカウントでログインすると日本時間で表示される仕様になっている
- そのため、夏と冬では夏時間と冬時間があるために計算処理が違っている(らしい)
- ので、Twitter側の投稿の収集が「カルフォルニア時間」→「グリニッジ標準時」→「日本時間」というシーケンスを経ているため、「カルフォルニア時間」→「グリニッジ標準時」で計算変換されなかった夏と冬の差がAPIリクエスト時に表れているのでは
## お伺いしたいこと
- 上記を前提とした場合、解決策として、夏時間が使われる間に投稿された投稿に関しては、+9時間ではなく+8時間の処理を行うようにする
というのは正しいかどうか、ご意見伺いたいです。
よろしくお願いします。
  • PHP

    25527 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Twitter

    843 questions

    Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

  • API

    1922 questions

    APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

2 編集

piarokaren

piarokaren score 14

2017/09/15 20:04  投稿

Twitter Search API での投稿時間が1時間ずれる
# 困ってるとと  
- TwitterSearchAPIで取得した投稿の投稿時間をGMT→JSTに変換すると実際のTwitterで見た投稿時間より1時間進んでしまう  
 
# 前提
- PHP 5 latest
- Twitter Search API (/search/tweets.json)
## 現象
- 取得したTweetのcreated_at(投稿時間)がGMTで返ってくるため日本時間に変換すると、実際にTwitterの画面上で見た時より+1時間された時間になる
- 変換の仕方は様々試した(date({format}, strtotime(created_at)やDateTime->setTimeZone()など)が、すべて+1時間されるため、JSTへの変換処理は間違えていないはず
## ぐぐって調査したところ…
- Twitterの画面の表示時間も、デフォルトだとカルフォルニア時間で表示されるが、日本のアカウントでログインすると日本時間で表示される仕様になっている
- そのため、夏と冬では夏時間と冬時間があるために計算処理が違っている(らしい)
- ので、Twitter側の投稿の収集が「カルフォルニア時間」→「グリニッジ標準時」→「日本時間」というシーケンスを経ているため、「カルフォルニア時間」→「グリニッジ標準時」で計算変換されなかった夏と冬の差がAPIリクエスト時に表れているのでは
## お伺いしたいこと
- 上記を前提とした場合、解決策として、夏時間が使われる間に投稿された投稿に関しては、+9時間ではなく+8時間の処理を行うようにする
というのは正しいかどうか、ご意見伺いたいです。
というのは正しいかどうか、ご意見伺いたいです。
よろしくお願いします。
  • PHP

    25527 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Twitter

    843 questions

    Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

  • API

    1922 questions

    APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

1 文章改善

piarokaren

piarokaren score 14

2017/09/14 19:54  投稿

Twitter Search API での投稿時間が1時間ずれる
# 前提
- PHP 5 latest
- Twitter Search API (/search/tweets.json)
## 現象
- 取得したTweetのcreated_at(投稿時間)がGMTで返ってくるため日本時間に変換すると、実際にTwitterの画面上で見た時より+1時間された時間になる
- 取得したTweetのcreated_at(投稿時間)がGMTで返ってくるため日本時間に変換すると、実際にTwitterの画面上で見た時より+1時間された時間になる
- 変換の仕方は様々試した(date({format}, strtotime(created_at)やDateTime->setTimeZone()など)が、すべて+1時間されるため、JSTへの変換処理は間違えていないはず
## ぐぐって調査したところ…
- Twitterの画面の表示時間も、デフォルトだとカルフォルニア時間で表示されるが、日本のアカウントでログインすると日本時間で表示される仕様になっている
- そのため、夏と冬では夏時間と冬時間があるために計算処理が違っている(らしい)
- ので、Twitter側の投稿の収集が「カルフォルニア時間」→「グリニッジ標準時」→「日本時間」というシーケンスを経ているため、「カルフォルニア時間」→「グリニッジ標準時」で計算変換されなかった夏と冬の差がAPIリクエスト時に表れているのでは
## お伺いしたいこと
- 上記を前提とした場合、解決策として、夏時間が使われる間に投稿された投稿に関しては、+9時間ではなく+8時間の処理を行うようにする
というのは正しいかどうか、ご意見伺いたいです。
  • PHP

    25527 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Twitter

    843 questions

    Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

  • API

    1922 questions

    APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る