有没有办法(重新)使用其内容的索引来映射Laravel Collections?

时间:2017-12-20 11:53:27

标签: php laravel collections mapping pluck

我有一些简报:

$newsletters = $channel->Newsletter()->whereIn('id', $wantNewsletters)->get();

此系列的结果如下:

enter image description here

我尝试使用pluck,但它只允许一列:

$newsletters = $channel->Newsletter()->whereIn('id', $wantNewsletters)->pluck('media', 'id');

enter image description here

我努力实现的目标就是这样(原谅我悲伤的油漆店技巧:D) enter image description here

在某种程度上,这就像->pluck('*', 'id')。现在我不得不预先处理每个集合,这对我来说似乎不对。

感谢您的帮助!

1 个答案:

答案 0 :(得分:5)

您可以使用keyBy方法:

$newsletters = $channel->Newsletter()->whereIn('id', $wantNewsletters)->get()->keyBy('id');