• ベストアンサー

一週間前のゼロ時取得方法

こんにちは、 一週間前のゼロ時から取得したいのですが 今日が2012/12/23日の場合 $oldday = strtotime(date('Y-m-d',strtotime("-7 day")));だと 2012/12/16 08:00:00 と8時からでゼロ時になりません。 2012/12/16 00:00:00 としたいのですが 何か方法ありますでしょうか?

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

タイムゾーンの問題かも <?PHP date_default_timezone_set('Asia/Tokyo'); $oldday = mktime(0,0,0,date("m"),date("d")-7,date("y")); print date("Y/m/d H:i:s",$oldday);

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • yuu_x
  • ベストアンサー率52% (106/202)
回答No.3

$date = new DateTime( 'now', new DateTimeZone( 'Asia/Tokyo' ) ); $date->setTime( 0, 0, 0 ); $date->modify('-1 weeks'); echo $date->format('Y-m-d H:i:s') . "\n";

すると、全ての回答が全文表示されます。
  • teketon
  • ベストアンサー率65% (141/215)
回答No.1

PHPは使った事無いですが。 1.現在の日付文字列取得 2.1で取得した日付文字列と、時間00:00:00の文字列をくっつけて、現在の日付のゼロ時を取得 3.2で取得した値から7日戻す こんな感じでは? それと、PHP5.3以降は日付の加減算は、date_add、date_subを使うようです。

参考URL:
http://php.net/manual/ja/function.strtotime.php
すると、全ての回答が全文表示されます。

関連するQ&A