Laravel使用碳获得当前季度

imp*_*335 3 php laravel php-carbon laravel-5

如何使用Carbon确定当前季度?即,我想掌握该季度开始的日期和结束的日期。

我尝试了echo new Carbon('this quarter');一种不可行的直观方法,但我想他们四分之一都没有。


我想通了,我做到了:

$query->where(DB::raw('QUARTER(FT.created_at)'), Carbon::now()->quarter);
$query->where(DB::raw('YEAR(FT.created_at)'), '=', Carbon::now()->year);
Run Code Online (Sandbox Code Playgroud)

但是现在,我在努力获取上个季度的开始和结束日期。

use*_*496 5

您可以使用firstOfQuarterlastOfQuarter方法确定一个季度的开始日期和结束日期...

$date = new \Carbon\Carbon('-3 months');
$firstOfQuarter = $date->firstOfQuarter();
$lastOfQuarter = $date->lastOfQuarter();
Run Code Online (Sandbox Code Playgroud)


imp*_*335 4

我想我已经解决了:

...
case 9:
                    $a = Carbon::now();
                    $a->month($a->month-3);
                    $lastQuarter = $a->quarter;
                    $query->where(DB::raw('QUARTER(FT.created_at)'), $lastQuarter);
                    $query->where(DB::raw('YEAR(FT.created_at)'), $a->year);
                    break;
...
Run Code Online (Sandbox Code Playgroud)

如果有更好的方法,请告诉我,非常感谢您的帮助。