laravel-5.4:获取从昨天5点开始创建的记录;直到现在
我需要获取从昨天下午5点创建的记录,直到现在,如果我尝试以下操作:laravel-5.4:获取从昨天5点开始创建的记录;直到现在,laravel,php-carbon,Laravel,Php Carbon,我需要获取从昨天下午5点创建的记录,直到现在,如果我尝试以下操作: 如果我在8am打开系统,查询开始昨天下午5点直到现在(8am) 如果我在1pm打开系统,查询开始昨天下午5点直到现在(1pm) 。。。等等 这是我的功能 public function allNewOrdersToday() { $allNewOrders = ( new OrderList() ) ->where( 'created_at', '>=', Carbon::
- 如果我在
打开系统,查询开始8am
直到昨天下午5点
(8am)现在
- 如果我在
打开系统,查询开始1pm
直到昨天下午5点
(1pm)现在
public function allNewOrdersToday() {
$allNewOrders = ( new OrderList() )
->where( 'created_at', '>=', Carbon::yesterday() )
return $allNewOrders;
}
试着这样做:
public function allNewOrdersToday() {
$allNewOrders = ( new OrderList() )
->whereDate( 'created_at', '>=', date('Y-m-d 17:00:00',strtotime("-1 days"))
return $allNewOrders;
}
使用
Carbon
,您应该能够使用Yesturday()
和setTime()
Carbon方法查询日期超过Yesturday 5:00pm
:
use Carbon\Carbon;
...
public function allNewOrdersToday() {
return OrderList::whereDate('created_at', '>=', Carbon::yesterday()->setTime(17, 00, 00)->toDateTimeString())
->get();
}
在本例中,我将
(new OrderList())
更改为OrderList::…
,因为您使用的是雄辩的
模型,并且能够调用查询生成器方法,而无需类的新实例。什么是OrderList()
?这是型号
?如果是这样,是否有理由创建一个新订单列表()
,而不仅仅是使用静态生成器方法?@thisiskelvin是的,这是一个模型,这是function@YousefAltaf请试一试。如果这样做有效,请将问题标记为正确