PHPで「現在日付を起点にして2週間後の日を自動表示」なんて処理が必要だったのでメモ。
PHPで日付を扱うにはstrtotimeとmktimeなどの関数があって、それぞれ使い方が異なるので整理してみました。
strtotime() 関数
date()関数の引数でstrtotime()を利用して、本日から2週間後の「日」を表示します。今日から2週間後は
1 2 3 4 5 6 |
<?php echo date("Y年m月d日",strtotime( '+2 week' )); ?> です。 |
以下のように日ベースでもいけます。
1 2 3 4 5 6 7 |
今日から2週間後は <?php echo date("Y年m月d日",strtotime( '+14 day' )); ?> です。 |
mktime() 関数
date()関数の引数でmktime()を利用する例です。
1 2 3 4 5 6 7 8 9 10 11 12 |
今日から2週間後は <?php echo date("Y年m月d日",mktime( 0,//時 0,//分 0,//秒 date("m"), date("d")+14, date("Y") )); ?> です。 |
今回は2週間後でしたが、1日後、1ヶ月後、1日前などの処理も可能です。
date() 関数のフォーマット
参考までに、上の例で出てきた「Y」とか「H」とか「i」など、PHP の date() 関数のフォーマットについては、ピックアップして以下にまとめてみました。Y | 年(西暦4ケタ 例:2013) |
---|---|
m | 月(01~12) |
n | 月(1〜12) |
d | 日(01〜31) |
H | 時(00〜23) |
G | 時(0〜23) |
i | 分(00〜59) |
s | 秒(00〜59) |
参考ページ
PHP: date – Manual
コメント