我想统计过去 30 天内每天的所有注册用户。如果没有注册则返回0
目前我正在使用这个
$startDate = Carbon\Carbon::now()->subDays(30);
$signup = User::where('created_at', '>=', $startDate)
->groupBy('date')
->orderBy('date', 'DESC')
->get([
DB::raw('Date(created_at) as date'),
DB::raw('COUNT(*) as value')
]);
return $signup;
电流输出
[
{
"date" : "2014-05-29",
"value" : 1
},
{
"date" : "2014-05-15",
"value" : 1
}
]
如果没有注册则显示值0
例如
[
{
"date" : "2014-05-29",
"value" : 1
},
{
"date" : "2014-05-28",
"value" : 0
},
{
"date" : "2014-05-27",
"value" : 0
},
{
.....
.....
},
{
"date" : "2014-05-15",
"value" : 1
}
{
"date" : "2014-05-14",
"value" : 0
}
]
我怎样才能得到这样的结果。
最佳答案
将$result数组按值放入另一个数组中,如果lastrowdate - rowdate > 1天,则使用此函数填充空日期: https://stackoverflow.com/a/4312491/3696548
关于php - 统计每天的入场次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23979333/