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

问题描述 投票:2回答:1

我有一些通讯:

$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')。现在我不得不预先处理每个集合,这对我来说似乎不对。

谢谢你的帮助!

php laravel collections mapping pluck
1个回答
5
投票

你可以使用keyBy方法:

$newsletters = $channel->Newsletter()->whereIn('id', $wantNewsletters)->get()->keyBy('id');
© www.soinside.com 2019 - 2024. All rights reserved.