概要
閲覧数:1158
投稿日:2014-10-27
更新日:2015-04-01
指定日時より指定期間前の日時を取得
・strtotime関数を使用
strtotime関数
・引数で指定された文字列をタイムスタンプに変換
タイムスタンプ
・1970年1月1日00時00分00秒 GMT からの経過秒数
GMT 【Greenwich Mean Time】(グリニッジ標準時)
・イギリスのグリニッジ天文台での天体観測を元に決められる時刻
・以前は世界標準時刻として普及していた(現在では原子時計によって決定されるUTC(協定世界時)の方を利用することが多い、とされる
コード
echo "基準日 … 現在\n"; echo "24時間前 … ". strtotime("-24 hour" )."\n"; echo "1日前 … ". strtotime("-1 day" )."\n"; echo "1週間前 … ". strtotime("-1 week" )."\n"; echo "1ヶ月前 … ". strtotime("-1 month")."\n"; echo "1年前 … ". strtotime("-1 year" )."\n\n"; echo "基準日 … 2012/05/21\n"; echo "24時間前 … ". strtotime("2012/05/21 -24 hour" )."\n"; echo "1日前 … ". strtotime("2012/05/21 -1 day" )."\n"; echo "1週間前 … ". strtotime("2012/05/21 -1 week" )."\n"; echo "1ヶ月前 … ". strtotime("2012/05/21 -1 month")."\n"; echo "1年前 … ". strtotime("2012/05/21 -1 year" )."\n\n"; echo "基準日 … 現在。date\n"; echo "24時間前 … ". date("Y/m/d H:i:s", strtotime("-24 hour" ))."\n"; echo "1日前 … ". date("Y/m/d", strtotime("-1 day" ))."\n"; echo "1週間前 … ". date("Y/m/d", strtotime("-1 week" ))."\n"; echo "1ヶ月前 … ". date("Y/m/d", strtotime("-1 month"))."\n"; echo "1年前 … ". date("Y/m/d", strtotime("-1 year" ))."\n\n"; echo "基準日 … 2012/05/21。date\n"; echo "24時間前 … ". date("Y/m/d H:i:s", strtotime("2012/05/21 -24 hour" ))."\n"; echo "1日前 … ". date("Y/m/d", strtotime("2012/05/21 -1 day" ))."\n"; echo "1週間前 … ". date("Y/m/d", strtotime("2012/05/21 -1 week" ))."\n"; echo "1ヶ月前 … ". date("Y/m/d", strtotime("2012/05/21 -1 month"))."\n"; echo "1年前 … ". date("Y/m/d", strtotime("2012/05/21 -1 year" ))."\n\n"; echo "基準日 … 現在。now\n"; echo "24時間前 … ". strtotime("now -24 hour" )."\n"; echo "1日前 … ". strtotime("now -1 day" )."\n"; echo "1週間前 … ". strtotime("now -1 week" )."\n"; echo "1ヶ月前 … ". strtotime("now -1 month")."\n"; echo "1年前 … ". strtotime("now -1 year" )."\n\n"; echo "基準日 … 現在。date/now\n"; echo "24時間前 … ". date("Y/m/d H:i:s", strtotime("now -24 hour" ))."\n"; echo "1日前 … ". date("Y/m/d", strtotime("now -1 day" ))."\n"; echo "1週間前 … ". date("Y/m/d", strtotime("now -1 week" ))."\n"; echo "1ヶ月前 … ". date("Y/m/d", strtotime("now -1 month"))."\n"; echo "1年前 … ". date("Y/m/d", strtotime("now -1 year" ))."\n\n"; //今日に対するさまざまな日付を表示 print "今日→" . date("Y/m/d") . "<br>"; print "昨日→" . date("Y/m/d", strtotime("-1 day")) . "<br>"; print "明日→" . date("Y/m/d", strtotime("+1 day")) . "<br>"; print "1ヶ月後→" . date("Y/m/d", strtotime("+1 month")) . "<br>"; print "2ヶ月後→" . date("Y/m/d", strtotime("+2 month")) . "<br>"; //現在時刻に対する時刻を表示 print "現在時刻→" . date("h:i:s") . "<br>"; print "8時間15分後→" . date("h:i:s", strtotime("+8 hours 15 minutes")) . "<br>";
結果
基準日 … 現在 24時間前 … 1414333901 1日前 … 1414333901 1週間前 … 1413815501 1ヶ月前 … 1411828301 1年前 … 1382884301 基準日 … 2012/05/21 24時間前 … 1337472000 1日前 … 1337472000 1週間前 … 1336953600 1ヶ月前 … 1334966400 1年前 … 1305936000 基準日 … 現在。date 24時間前 … 2014/10/26 14:31:41 1日前 … 2014/10/26 1週間前 … 2014/10/20 1ヶ月前 … 2014/09/27 1年前 … 2013/10/27 基準日 … 2012/05/21。date 24時間前 … 2012/05/20 00:00:00 1日前 … 2012/05/20 1週間前 … 2012/05/14 1ヶ月前 … 2012/04/21 1年前 … 2011/05/21 基準日 … 現在。now 24時間前 … 1414333901 1日前 … 1414333901 1週間前 … 1413815501 1ヶ月前 … 1411828301 1年前 … 1382884301 基準日 … 現在。date/now 24時間前 … 2014/10/26 14:31:41 1日前 … 2014/10/26 1週間前 … 2014/10/20 1ヶ月前 … 2014/09/27 1年前 … 2013/10/27 今日→2015/04/01 昨日→2015/03/31 明日→2015/04/02 1ヶ月後→2015/05/01 2ヶ月後→2015/06/01 現在時刻→10:01:34 8時間15分後→06:16:34