Пройдите по приведенному ниже коду.
Почему нужно получать третий месяц два раза вместо второго.
Код
('current ' . Carbon::now()->format('Y-m-d'));//2021-04-30
('sub 1 -'.Carbon::now()->subMonths(1)->format('Y-m-d'));
('sub 2 -'.Carbon::now()->subMonths(2)->format('Y-m-d'));
('sub 3 -'.Carbon::now()->subMonths(3)->format('Y-m-d'));
Результат
current 2021-04-30
sub 1 - 2021-03-30
sub 2 - 2021-03-02
sub 3 - 2021-01-30
Ожидаемый результат
current 2021-04-30
sub 1 - 2021-03-30
sub 2 - 2021-02-02
sub 3 - 2021-01-30
Подробнее здесь: https://stackoverflow.com/questions/673 ... -in-carbon