2015-12-16 24 views
3

我正在尝试获取列的所有值,然后在另一个查询中使用它。我用lists,并获得价值为数组,但我找不到检查变量的方式(含阵列每个ID)的其他查询在Laravel Query Building的' - > where()中使用数组'

$subscribes = Subscribe::where('from_id', $currentUser)->lists('id') 

// dd($subscribes), logs values as array. 


$videos = Photo::where('id', $subscribes)->get(); 

这不起作用,因为$订阅是一个数组。

我应该使用for循环并为每个ID发送另一个查询吗?还是有一种我错过的实用方法?什么是使用它的正确方法?

+0

是它下面的一个工作? –

回答

1

应用whereIn方法

if(is_array($subscribes) && count($subscribes) > 0){ 
    $videos = Photo::whereIn('id', $subscribes)->get(); 
}