PHP

【PHP】dateで指定日前の日付を出力する

更新日:

スポンサードリンク

指定日前の日付の取得方法

date_default_timezone_set('Asia/Tokyo');
echo date("c")."<br>";
$day = '-3';
$day2 = $day.' day';
echo date("c",strtotime("-3 day"))."<br>";
echo date("c",strtotime($day." day"))."<br>";
echo date("c",strtotime($day2))."<br>";
2013-11-23T20:15:38+09:00
2013-11-20T20:15:38+09:00
2013-11-20T20:15:38+09:00
2013-11-20T20:15:38+09:00

まずは「date_default_timezone_set」によってタイムゾーンを設定します。これによりどこの日時を基準にするかが決まります。ここでは東京を基準にしてます。これを設定し忘れると希望の日付が出ない場合があるので注意。(php.iniで設定されている場合は必要ないです)

そして、○日前なら『day』を使います。入力は文字列ですので上の例のように動的に○日前の日付を求めることができます。もし何日前ではなく何週間前や何カ月前といったものを表示したい場合は下のようにdayの部分を書き換えてあげます。

日:day
週:week
月:month
年:year

また、前の日付ではなく後の日付が欲しい場合は日付の『-』のところを『+』に変更します。

今回の出力は"c"で行っていますが、ここを変更すれば『○年○月○日』といった表記も可能です。(下の参考文献を参照してください)

『PHPの基本【日付計算】』:http://www.geocities.jp/web9star/php_basic/date_2.html
『日時を取得する(time, date)』:http://www.phpbook.jp/func/date/index1.html
スポンサードリンク
Amazonリンク
参考:mementoo.info

-PHP

Copyright© めめんと , 2020 All Rights Reserved Powered by AFFINGER5.