date()関数
第1引数「日時フォーマット」,第2引数「UNIXタイムスタンプ(整数型の値)」
echo date('Y年n月j日H時i分s秒');
2023年10月28日14時06分09秒
日時のフォーマット date(),DateTimeクラスと同じ
日時のフォーマット文字 | 意味 | 例 |
---|---|---|
Y | 年(4桁表記) | 2015、2022など |
y | 年(2桁表記) | 15、22など |
m | 月(先頭に0をつける) | 01~12 |
n | 月(先頭に0をつけない) | 1~12 |
d | 日(先頭に0をつける) | 01~31 |
j | 日(先頭に0をつけない) | 1~31 |
H | 24時間単位の時間(先頭に0をつける) | 00~23 |
G | 24時間単位の時間(先頭に0をつけない) | 0~23 |
h | 12時間単位の時間(先頭に0をつける) | 01~12 |
g | 12時間単位の時間(先頭に0をつけない) | 1~12 |
i | 分(先頭に0をつける) | 00~59 |
s | 秒(先頭に0をつける) | 00~59 |
UNIXタイムスタンプ
1970年1月1日0時0分0秒からの経過秒数のことです。
strtotime()関数
strtotime(日時, 基準となるUNIXタイムスタンプ);
第1引数の「日時」には文字列型の値(例:'now'、'+1 day'など)、第2引数の「基準となるUNIXタイムスタンプ」には整数型の値(例:1652662122)を渡します。第2引数はオプションなので省略可能です。省略した場合は現在を基準とした第1引数の「日時」のUNIXタイムスタンプが戻り値として返されます。
echo strtotime('+1 week');
16532795250
strtotime()関数における日時の指定方法
strtotime()関数における日時の指定方法 | 意味 |
---|---|
now | 現在の日時 |
today | 今日の日付 |
yesterday | 前日 |
tomorrow | 翌日 |
19 March 2015 | 指定日付 |
2015-03-19 12:15:30 | 指定日時 |
+n(-n)seconds | n秒後(前) |
+n(-n) min n分後 | (前) |
+n(-n) hours | n時間後(前) |
+n(-n) day n日後 | (前) |
+n(-n) week | n週後(前) |
+n(-n) month | nか月後(前) |
+n(-n) year | n年後(前) |
next Monday | 翌週の指定曜日 |
last Monday | 前週の指定曜日 |
date()関数とstrtotime()関数
現在を基準として3年前の日時を出力
echo date('Y/m/d H:i:s', strtotime('-3 year'));
2023/10/28 14:34:19
DateTimeクラス
// 現在の日時のインスタンスを作成する $now = new DateTime(); // 指定した日付のインスタンスを作成する $date = new DateTime('2015-03-19'); // 指定した日時のインスタンスを作成する $date_time = new DateTime('2015-03-19 12:15:30');