【发布时间】:2019-01-17 18:43:08
【问题描述】:
这是我的控制器
public function index(){
$products = Order::whereHas('user', function ($query) {
if(request()->has('d') && request()->get('d')){
$arr = [
'start' => Carbon::parse(substr(request()->get('d'), 4, 11))->format('Y-m-d'),
'end' => Carbon::parse(substr(request()->get('d'), 64, -44))->format('Y-m-d')
];
$builder = $query->whereBetween('created_at', [$arr['start'],$arr['end']]);
}
});
return OrdersResource::collection($orders->latest()->paginate(5));
}
我的数组$arr 看起来像这样
array:2 [
"start" => "2018-08-07"
"end" => "2018-08-09"
]
如何将 laravel 中的 created_at (which is a datetime) 列更改为仅年月日格式
我需要将 created_at 转换为该格式才能执行 laravel 的 whereBetween 查询,因为它没有给我确切的结果
【问题讨论】:
-
你可以在哪里使用
DB::raw('DATE(created_at)'),两个答案都可以