Laravel Eloquent查询获取id等于数组的所有结果

时间:2018-04-10 14:00:39

标签: php laravel laravel-5 eloquent

我正在尝试从我的数据库中获取所有数据,其中id等于数组中的id。我希望这个按顺序运行,例如,如果数组被调用$attributes并且看起来像这样;

array:2 [▼
  0 => 11
  1 => 12
]

我想获取id等于11的所有结果,并将它们组合在一起以便稍后循环。然后继续向DB查询id等于12的所有结果。

我可以创建一个循环并在每次迭代时运行一个查询,但是如果数组有30多个id,那将导致30个查询基本相同,只是匹配不同的id。

我可以将数组传递给where or子句并将结果分块,以便我可以循环以后将其分组吗?

1 个答案:

答案 0 :(得分:2)

像这样传递数组:

 $models = Model::whereIn('id', [1, 2, 3])->get();

Retrieve Laravel Model results based on multiple ID's