• ベストアンサー

タイムスタンプで日付の取得

どうしでも自分では解決しないので、ご存知の方いましたらお教え下さい。 金曜日の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時間差が出てしまうのでしょうか? 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#30334
noname#30334
回答No.2

サマータイムが関係してませんかね。 ヨーロッパでは、3月最終日曜日午前1時~10月最終日曜日午前1時 だそうですから、2007/3/25 01:00でサマータイムに切り替わるみたいです。 OSのタイムゾーンはどこになってますか?

参考URL:
http://ja.wikipedia.org/wiki/%E5%A4%8F%E6%99%82%E9%96%93
ika
質問者

お礼

ご回答、有難うございました。 ご指摘のとおり、サマータイムのおかげで1時間のズレが発生してました。

その他の回答 (2)

  • wish46
  • ベストアンサー率78% (29/37)
回答No.3

海外サーバーなら グリニッジタイムが楽かも $times = time()+9*60*60; //日本時間(タイムスタンプ) $after = 67*60*60; //67時間後 echo gmdate("Y年m月d日 H時i分",$times+$after);

noname#26650
noname#26650
回答No.1

私のところでは、 2007年03月31日 00時00分 2007年04月02日 19時00分 2007年03月24日 01時00分 2007年03月26日 20時00分 となり、ともに67時間後の時刻を出力します。 今一度確認なさってみてはいかがでしょうか。

関連するQ&A