是否可以在通过get()函数调用的Laravel集合中使用where子句

是否可以在通过get()函数调用的Laravel集合中使用where子句,laravel,Laravel,如上述问题,;有没有办法在集合上使用where子句 这是我的密码 $order=\App\order::where('user\u id',$input['user\u id')) ->其中('created_at',array($date_from_formatted,$date_to_formatted)) ->get(); 请注意,当我添加($order)时,我的收藏返回的很好 $online\u order=$order->where('order\u type','Onl') ->其

如上述问题,;有没有办法在集合上使用where子句

这是我的密码

$order=\App\order::where('user\u id',$input['user\u id'))
->其中('created_at',array($date_from_formatted,$date_to_formatted))
->get();
请注意,当我添加($order)时,我的收藏返回的很好

$online\u order=$order->where('order\u type','Onl')
->其中(‘已支付’、‘Y’)
->其中('status',$param);
$online_order->all();
请注意,当我dd($online_order)时,我会得到一个空的集合


我的$online\u订单有问题吗

make
$order
对实例进行建模,这样您就可以对其使用
where()

$order=\App\order::where('user\u id',$input['user\u id'))
->其中('created_at',array($date_from_formatted,$date_to_formatted));
orderValue=$order->get();
及其他

$online\u order=$order->where('order\u type','Onl')
->其中(‘已支付’、‘Y’)
->其中('status',$param);
$online_order->all();

这样试试。也许这会解决你的问题

$query = \App\Order::where('user_id', $input['user_id'])
                   ->whereBetween('created_at', array($date_from_formatted, $date_to_formatted));

$order = $query->get();

$online_order = $query->where('ord_type', 'Onl')->where('paid', 'Y')
                      ->whereIn('status', $param)->get();

您的代码很好,我想可能只是没有数据适应这些条件有数据,当我将我的
$order
更改为
$order=\App\order::where('user\u id',$input['user\u id'))->where('ord\u type','Onl')->where('paid','Y')->其中('status',$param)->where('created\at',array('date\u from\u格式化,$date to\u格式化))->get()它将数据返回给我,我之所以将其拆分是因为后来进行了一些日期筛选。
$online_order->all()应返回所有数据。不会对其应用任何其他条件。@hasan05否,它应用于集合,因此它将返回arraycan u post您的表的结构?仍然相同。集合返回一个空数组,`collection{1255▼   #items:[]}`您可以调试,但是
toSql()
函数代替了
get()
值,并将该sql运行到mysql并进行检查