• RSS
[PHP]strtotime()、mktime() で「今日から3ヶ月後」の月を表示させる処理

PHP で「現在日付を起点にして 2週間後の日を自動表示」なんて処理が必要だったのでメモ。

PHP で日付を扱うには strtotimemktime などの関数があって、それぞれ使い方が異なるので整理してみました。

strtotime() 関数

date() 関数の引数で strtotime() を利用して、本日から2週間後の「日」を表示します。

以下のように日ベースでもいけます。


出力結果はこのような感じです。

今日から2週間後は 2022年04月04日 です。


mktime() 関数

date() 関数の引数で mktime() を利用する例です。
今日から2週間後は
<?php echo 
	date("Y年m月d日",mktime(
		0,//時
		0,//分
		0,//秒
		date("m"),
		date("d")+14,
		date("Y")
	));
?>
です。

出力結果はこのような感じです。
今日から2週間後は 2022年04月04日 です。

今回は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