この記事では、PHP で date 関数と strtotime 関数を使用して、ユーザーが指定した時間の最初の日または記事の最後の日を取得する方法を紹介します。詳しく知りたい人は参考にしてください。
date 関数と strtotime 関数を使用すると、今月、来月、先月の最初と最後の日を簡単に取得できます。実装は以下のとおりです。関数のパラメータの日付形式は yyyy-MM-dd です。
1. 日付を指定して、今月の最初と最後の日を取得します
コードは次のとおりです | コードをコピー |
関数 getCurMonthFirstDay($date) { 関数 getCurMonthLastDay($date) { |
2. 日付を指定して、翌月の最初と最後の日を取得します
コードは次のとおりです | コードをコピー |
関数 getNextMonthFirstDay($date) { 関数 getNextMonthLastDay($date) { |
3. 日付を指定して、翌月の最初と最後の日を取得します
コードは次のとおりです | コードをコピー |
関数 getPrevMonthFirstDay($date) { 関数 getPrevMonthLastDay($date) { |
strtotime 関数パラメータ「+1 month」では、PHP は特定の月に基づいて追加する日数を決定します。これは、28、29 (2 月)、30 (小さい月)、または 31 (大きい月) の場合があります。特定の月の「-1 日」は、当然、先月の最終日です。PHP は、その月に基づいて、それが 28、29、30、または 31 であるかどうかをインテリジェントに判断します。
strtotime — 英語テキストの日時記述を Unix タイムスタンプに解析します
バグを報告する 説明
int strtotime ( string $time [, int $now = time() ] )
この関数は、米国英語形式の日付を含む文字列を期待し、now パラメータで指定された時刻を基準とした Unix タイムスタンプ (1970 年 1 月 1 日 00:00:00 GMT からの秒数) に解析しようとします。このパラメータが指定しない場合は、現在のシステム時間が使用されます。