如何用碳获得上个月的第一天和最后一天 - Laravel

2022-08-30 09:17:23

我需要使用碳库上个月的第一天和最后一天,我尝试过如下:

$firstDayofPreviousMonth = Carbon::now()->startOfMonth()->subMonth()->toDateString();
$lastDayofPreviousMonth = Carbon::now()->endOfMonth()->subMonth()->toDateString();

我得到的结果是(因为当前月份是5th(5月))和.$firstDayofPreviousMonth = '2016-04-01'$lastDayofPreviousMonth = '2016-05-01'

我得到了正确的结果,但它给了我30天前的结果,并给了我错误的结果。$firstDayofPreviousMonth$lastDayofPreviousMonth

任何人都可以帮我解决这个问题吗?


答案 1

试试这个:

$start = new Carbon('first day of last month');
$end = new Carbon('last day of last month');

答案 2

试试这个

$firstDayofPreviousMonth = Carbon::now()->startOfMonth()->subMonth()->toDateString();
$lastDayofPreviousMonth = Carbon::now()->subMonth()->endOfMonth()->toDateString();

更新的代码,更准确

$firstDayofPreviousMonth = Carbon::now()->startOfMonth()->subMonthsNoOverflow()->toDateString();

$lastDayofPreviousMonth = Carbon::now()->subMonthsNoOverflow()->endOfMonth()->toDateString();

@kenfai 谢谢


推荐