- ベストアンサー
時間を日本時間にコンバート
strtotime()、もしくは m/d/y H:i のフォーマットで取得した時間のデータがあるのですが、GMT-8のタイムゾーンになっています。これを日本時間に変換して表示させたいのですが、どのような方法がよろしいでしょうか? ご存知の方おられましたらどうぞよろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
変換もとの時刻文字列に、タイムゾーンを加えて、strtotime関数に与えるのが楽かなと思います。 $str = '11/28/06 18:30 -0800'; $t = strtotime($str); echo date('Y/m/d H:i T', $t). "\n"; // 2006/11/29 11:30 JST もしくは、GMT-8の時刻文字列を、とりあえずGMT+9と解釈してダミーのunixtimeを生成して、それに17時間足して日本時間とするような方法もあると思います。 #setlocale関数を使ってもできそうですが、PHPマニュアルの「警告」を見ると余り使わない方がよいみたいです。
お礼
ありがとうございます。参考になります。 サーバが GMT-8にあるというのを言及し忘れていました。しかしながら、教えていただいた方法を自分なりに咀嚼した結果、とりあえず、 echo gmdate("m/d/y H:i", $str+32400); のようにすることでできました。