- ベストアンサー
タイムスタンプで日付の取得
どうしでも自分では解決しないので、ご存知の方いましたらお教え下さい。 金曜日の16時から67時間後、つまり翌月曜日の11時を表示させたい場合、 echo date("Y年m月d日 H時i分",1175266800); 2007年03月30日 16時00分 echo date("Y年m月d日 H時i分",1175266800 + 241200); 2007年04月02日 11時00分 となり何も問題ないのですが、同じく echo date("Y年m月d日 H時i分",1174665600 ); 2007年03月23日 16:00 echo date("Y年m月d日 H時i分",1174665600 + 241200); とした場合、 2007年03月26日11:00 となるべきなのに 2007年03月26日12:00 と1時間ずれてしまいます。 なぜ同じ67時間後(241200秒後)なのに1時間差が出てしまうのでしょうか? 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
サマータイムが関係してませんかね。 ヨーロッパでは、3月最終日曜日午前1時~10月最終日曜日午前1時 だそうですから、2007/3/25 01:00でサマータイムに切り替わるみたいです。 OSのタイムゾーンはどこになってますか?
その他の回答 (2)
- wish46
- ベストアンサー率78% (29/37)
海外サーバーなら グリニッジタイムが楽かも $times = time()+9*60*60; //日本時間(タイムスタンプ) $after = 67*60*60; //67時間後 echo gmdate("Y年m月d日 H時i分",$times+$after);
私のところでは、 2007年03月31日 00時00分 2007年04月02日 19時00分 2007年03月24日 01時00分 2007年03月26日 20時00分 となり、ともに67時間後の時刻を出力します。 今一度確認なさってみてはいかがでしょうか。
お礼
ご回答、有難うございました。 ご指摘のとおり、サマータイムのおかげで1時間のズレが発生してました。