问题描述
我正在使用for loop
for ($i = 1; $i < $days; $i++) {
$date = Now()->format('Y-m-') . $i; //result '2020-08-1'
$date = Carbon::parse($date); //parsing with carbon
$profit = Profit::whereDate('created_at',$date->format('Y-m-d'))->first(); //<-- this not working getting null data
$data[] = $profit;
}
但是可以正常工作
$profit = Profit::whereDate('created_at','2020-08-01')->first(); //<-- its working fine statically
我做错了什么,谢谢你
解决方法
这应该行得通,我必须相信我们错过了一个难题。
话虽这么说,您不需要在Laravel中按日期查询就很麻烦:查询构建器将接受Carbon日期毫无问题。因此,我建议我们将您的代码简化为此代码,看看它是否有任何改变:
$date = Carbon::today()->startOfMonth(); // This is the first day of today's month,i.e. 2020-08-01
for($i = 0; $i < $days; $i++) {
$profit = Profit::whereDate('created_at',$date)->first();
$data[] = $profit;
$date->addDay();
}