Laravel 查询今天未检索';s记录
我想把我桌上所有的记录都从今天开始,但是 出于某种原因,它不想发生。我得到一个空的集合 这是我的密码Laravel 查询今天未检索';s记录,laravel,laravel-8,Laravel,Laravel 8,我想把我桌上所有的记录都从今天开始,但是 出于某种原因,它不想发生。我得到一个空的集合 这是我的密码 $products = Product::where('created_at', Carbon::today())->get(); dd($products); 这是因为它试图进行精确匹配(日期和时间),并且假定today()返回一天开始的日期时间,它将只捕获创建值为的精确记录 为了缓解这种情况,您可以做的是检查比时间戳更近的值: $products = Product:
$products = Product::where('created_at', Carbon::today())->get();
dd($products);
这是因为它试图进行精确匹配(日期和时间),并且假定
today()
返回一天开始的日期时间,它将只捕获创建值为的精确记录
为了缓解这种情况,您可以做的是检查比时间戳更近的值:
$products = Product::where('created_at', '>=', Carbon::today())
->get();
更好的方法是使用whereDate
方法,该方法只考虑日期:
$products = Product::whereDate('created_at', Carbon::today())
->get();
查看更多备选方案。您应该使用从今天开始创建的所有记录,依此类推
$products = Product::where('created_at','>=', Carbon::today()->startOfDay())->get();
使用以下方法:
$products = Product::whereRaw('date(created_at) = date(now())')->get();