Laravel 4.1在循环中合并查询结果对象


Laravel 4.1 merge query result objects in a loop

我有以下代码:

    foreach($followlist as $followed)
{
    echo $followed;
    $query = Product::where('prod_user_id','=', $followed)->get();
}

我想将结果查询保存到$query变量中,但它只保存最后一个查询。我需要在另一个循环中使用结果查询,该循环从中提取数据,如下所示:

    foreach ($query as $pro){
$vidpic = $pro->prod_pic_id;
$vpic = Media::find($vidpic)->path;
...blabla
}

我尝试使用$query[]来保存所有内容,但在第二个循环中无法使用。我怎样才能做到这一点?任何帮助都将不胜感激。

您可以使用以下模式编写多个where

  $query = new Product;
    foreach($followlist as $followed)
    {
        echo $followed;
        $query->where('prod_user_id','=', $followed);
    }
    // retrieve all products using `get()`
    $products = $query->get();

   foreach ($products as $pro)
   {
          $vidpic = $pro->prod_pic_id;
          $vpic = Media::find($vidpic)->path;
           ...blabla
   }