🐈

Laravelで祝日判定をする

2021/12/24に公開

azuyalabs/yasumi を使用します。
https://github.com/azuyalabs/yasumi

まずはインストールします。

composer require azuyalabs/yasumi

次に使用したい場所で、Yasumiをインポートして、

use Yasumi\Yasumi;

carbonと併用しながら、祝日判定を行います。
これだけのコードで判定できます

public function isHoliday()
{
    $now = now();
    $holidays = Yasumi::create('Japan', $now->year);
    return $holidays->isHoliday($now);
}

おお!めちゃめちゃ簡単ですね。

平日のうち、祝日でない日を判定したい場合はこのようにします。

private function isWeekDay(): bool
{
    $now = now();
    $holidays = Yasumi::create('Japan', $now->year);
    return $now->isWeekday() && !$holidays->isHoliday($now);
}

carbonとYasumiでだいぶ柔軟に対応できそうです。

便利!!

Discussion