在' - > where()'中使用数组用于Laravel查询构建

时间:2015-12-16 12:17:49

标签: php mysql laravel

我试图获取列的所有值,然后在另一个查询中使用它。我使用lists并将值作为数组获取但是,我找不到在其他查询中检查该变量(包含每个id的数组)的方法

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

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


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

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

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

2 个答案:

答案 0 :(得分:3)

使用 ... <system.webServer> <staticContent> <remove fileExtension=".ts" /> <mimeMap fileExtension=".ts" mimeType="application/x-typescript" /> </staticContent> </system.webServer> </configuration> 方法:

whereIn

http://laravel.com/docs/5.1/queries(向下滚动/搜索'whereIn')

答案 1 :(得分:1)

应用whereIn方法

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