【PHP】日付・時刻の取得・計算まとめ
~簡単な自己紹介~
- 嫁と猫3匹と暮らすフルリモートの三十路SE
- 投資・節約・副業で資産形成中
- 現在の金融資産は約1,750万円、めざせアッパーマス層(資産3,000万円)
システム開発をしていると頻繁に日付計算を行います。
PHPの日付・時刻の取得やフォーマット、計算の使い方をまとめました。
内容は随時追加していきます。
目次
現在日付・現在時刻を取得する
現在日時
echo now(); //2023-08-01 15:53:25
または
echo date("Y-m-d H:i:s"); //2023-08-01 15:53:25
現在日付
echo date("Y-m-d"); //2023-08-01
現在時刻
echo date("H:i:s"); //15:52:31
○○を取得する/フォーマット
年(year)
echo date("Y", strtotime("2023-01-02 03:04:05")); //2023
echo date("y", strtotime("2023-01-02 03:04:05")); //23
月(month)
echo date("n", strtotime("2023-01-02 03:04:05")); //1
echo date("m", strtotime("2023-01-02 03:04:05")); //01
日(day)
echo date("j", strtotime("2023-01-02 03:04:05")); //2
echo date("d", strtotime("2023-01-02 03:04:05")); //02
時(hour)
echo date("H", strtotime("2023-01-02 03:04:05")); //03
分(minute)
echo date("i", strtotime("2023-01-02 03:04:05")); //04
秒(second)
echo date("s", strtotime("2023-01-02 03:04:05")); //05
曜日(day of week)
日本語の曜日は取得できないので、配列やif文と組み合わせる必要があります。
$week = ["日", "月", "火", "水", "木", "金", "土"];
echo $week[date("w", strtotime("2023-01-02 03:04:05"))]; //月
日付の加算・減算
n日後・n日前
echo date("Y-m-d", strtotime("2023-01-01 +10 day")); //2023-01-11
echo date("Y-m-d", strtotime("2023-01-01 -10 day")); //2022-12-22
n週間後・n週間前
echo date("Y-m-d", strtotime("2023-01-01 +1 week")); //2023-01-08
echo date("Y-m-d", strtotime("2023-01-01 -1 week")); //2022-12-25
nか月後・nか月前
echo date("Y-m-d", strtotime("2023-01-01 +1 month")); //2023-02-01
echo date("Y-m-d", strtotime("2023-01-01 -1 month")); //2022-12-01
n年後・n年前
echo date("Y-m-d", strtotime("2023-01-01 +1 year")); //2024-01-01
echo date("Y-m-d", strtotime("2023-01-01 -1 year")); //2022-01-01
月の初日
echo date("Y-m-d", strtotime("2023-01-15 first day of this month")); //2024-01-01
月の最終日
echo date("Y-m-d", strtotime("2023-01-15 last day of this month")); //2024-01-31
以上になります。
お疲れさまでした。