2015-04-06 37 views
2

如何使用碳來確定當前季度?即我想知道季度開始的日期和結束日期。Laravel使用碳來獲得當前季度

我嘗試了直覺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); 

但是現在我該如何進入最後一個季度的開始和結束日期掙扎。

+0

你會想什麼日期它返回?或者你只是想獲得創建日期的當前季度號碼? – lsowen

+0

Carbon :: now() - > toDateString() – imperium2335

+0

返回的日期您是否想要檢查日期是否在上個季度? – mininoz

回答

1

我想我已經解決了它:

... 
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; 
... 

請讓我知道一個更好的方式來做到這一點,如果有一個,你的幫助是非常讚賞。

1

您可以使用firstOfQuarterlastOfQuarter方法確定季度開始日期和結束日期...

$date = new \Carbon\Carbon('-3 months'); 
$firstOfQuarter = $date->firstOfQuarter(); 
$lastOfQuarter = $date->lastOfQuarter();