0

最近、facebook API をいじっていて、多くの問題を抱えています。

イベントから start_time を取得していますが、次のようになります。

2012-11-14T04:00:00+0000

イベントはフランス(私のタイムゾーン)で13日の午後7時に発生するため、これは太平洋時間だと思います。これを自分のタイムゾーンに変換するにはどうすればよいですか?

PS:私はPHPを使用しています

編集:私はいつもうまくいかない回避策を見つけました。

date_default_timezone_set('America/Los_Angeles'); 

日付関数を使用する前に。ただし、一部の変更日では機能しません。私は本当にそれがFacebookから来ていると思いますが...修正不可能なバグですか?

4

3 に答える 3

2
$time = '2012-11-14T04:00:00+0000';

$dt = new DateTime($time, new DateTimeZone('PST'));
$dt->setTimezone(new DateTimeZone('CET'));

echo $dt->format('Y-m-d H:i:s'); // 2012-11-14 05:00:00
于 2012-05-21T22:56:39.287 に答える
0
date_default_timezone_set('California');

カリフォルニアのタイムゾーンを試してください。私にとってはかなりうまくいきます。

于 2013-11-20T09:39:48.833 に答える
0

Facebook はISO 8601時刻形式を使用します。

末尾の +0000 は、太平洋時間ではなく UTC 時間であることを意味します。

于 2012-05-22T00:48:52.447 に答える