今回はLaravelに関して書いていきます。
以前もLaravelに関する記事を書いています(以下リンク)。
上記の記事で、CarbonPeriodを使って1週間分の日付と曜日を取得する処理について書いています。
「1週間分」の次は「1か月分」かなということで、1か月分の日付と曜日を取得してみます。
それでは本題へ。
プログラム
プログラムはこんな感じです。
// 対象年月を取得 $year = 2024; $month = 6; $date = 1; $carbon = Carbon::createFromDate($year, $month, $date); // 月初を取得 $startOfMonth = $carbon->startOfMonth()->toDateString(); // 月末を取得 $endOfMonth = $carbon->endOfMonth()->toDateString(); // 月初~月末の期間を取得 $periods = CarbonPeriod::create($startOfMonth, $endOfMonth)->toArray(); foreach ($periods as $value) { // データ出力 echo $value->isoFormat('YYYY/MM/DD(ddd)') . "\t"; // 日曜日で改行 if ($value->isSunday()) echo "<br>"; }
ざっくりの流れは、
- 対象年月を決める(今回は2024年6月)
- 対象年月の月初、月末を取得
- 月初~月末の期間を取得
という感じです。
プログラム実行
プログラムを実行すると、以下の結果が出力されます。
縦に長く出力されるのもアレだなと思い、日曜日で改行するようにしました。
おわりに
ということで、「【Laravel】年月を指定して1か月分の日付と曜日を取得する(CarbonPeriod)」に関してアレコレ書いてみました。
1か月分の日付が取得できたので、今度は簡易的なカレンダーを作ってみようかなと思います。
この記事が参考になれば幸いです。
関連記事
Laravelに関してはいくつか記事にしています。
気になる記事があればぜひ。