例如,我想获取基于天的记录
1)> 180天=创建的记录数
2)90到180天=创建的记录数
3)60到90天=创建的记录数
4)30到60天=创建的记录数
但是我没有得到确切的结果。这是正确的方法吗?
我在刀片视图中尝试过的内容
<?php
$date1 = \Carbon\Carbon::today()->subDays(180);
$date2 = \Carbon\Carbon::today()->subDays(90);
$date3 = \Carbon\Carbon::today()->subDays(60);
$date4 = \Carbon\Carbon::today()->subDays(30);
?>
in blade
{{ \App\Claim::where('created_at','>=', $date1)->count() }}
{{ \App\Claim::where('created_at','>=', $date2)->where('created_at','<', $date1)->count() }}
{{ \App\Claim::where('created_at','>=', $date3)->where('created_at','<', $date2)->count() }}
{{ \App\Claim::where('created_at','>=', $date4)->where('created_at','<', $date3)->count() }}
{{ \App\Claim::where('created_at','<=', $date4)->count() }}
答案 0 :(得分:1)
尝试此代码
?php
$date1 = \Carbon\Carbon::today()->subDays(180)->format('Y-m-d');
$date2 = \Carbon\Carbon::today()->subDays(90)->format('Y-m-d');
$date3 = \Carbon\Carbon::today()->subDays(60)->format('Y-m-d');
$date4 = \Carbon\Carbon::today()->subDays(30)->format('Y-m-d');
?>
in blade
{{ \App\Claim::whereDate('created_at','>=', $date1)->count() }}
{{ \App\Claim::whereDate('created_at','>=', $date2)->whereDate('created_at','<', $date1)->count() }}
{{ \App\Claim::whereDate('created_at','>=', $date3)->whereDate('created_at','<', $date2)->count() }}
{{ \App\Claim::whereDate('created_at','>=', $date4)->whereDate('created_at','<', $date3)->count() }}
{{ \App\Claim::whereDate('created_at','<=', $date4)->count() }}
注意:使变量的日期格式为Y-m-d