PHP 関数で月の最終日を取得する方法
Dennis Kithinji
2021年4月13日
2020年4月1日
PHP
PHP DateTime

PHP にはすでに、特定の月の最終日を取得するのに役立つ組み込み関数があります。DateTime
関数と strtotime
関数は、このシナリオで最も役立ちますが、strtotime
は、2038 年以降は正確に機能しないか、正しい結果を提供しません。ただし、strtotime
は日付の変換に最適です。
どちらの関数も t
という形式を使用します。公式のマニュアルによれば、指定された日付の月の日数を返します。月の最終日を取得するための鍵は、指定された日数を返す文字 t
であることに注意してください月。
月の最後の日付を取得する PHP の DateTime
これは、将来の日付と過去の日付の両方で月の最後の日付を取得するために使用する最良の方法です。format()
関数で渡されるパラメーターは-Y
、m
、t
です。これらの定数は PHP で定義されています。
年の完全な数値表現、4 桁は Y
の文字で表されます(例:2020
)。先行ゼロ付きの月の数値表現は文字 m
によるもので、これは 01
から 12
までです。また、指定された月の日数は文字 t
で表されます。
これは、使用される PHP バージョンが 5.3
以降の場合に最適なオプションです。
$L = new DateTime( '2020-02-01' );
echo $L->format( 'Y-m-t' );
上記のコードは、DateTime
関数に日付を提供し、フォーマット文字 Y-m-t
を使用して、指定された日付の月の最後の日付を取得します。
PHP の strtotime()
で月の最終日を取得
strtotime()
は、5.2 以前の PHP バージョンに最適なオプションです。
$date = "2020-01-15";
echo date("Y-m-t", strtotime($date));