将一个 Laravel 收藏夹与另一个收藏夹在一起

2022-08-30 19:34:02

我正在尝试将一个雄辩的收藏与Laravel 5.3中的另一个雄辩收藏相加。

这是我到目前为止所做的:

$entries = Entry::all();
$posts   = Post::all();

$entries->merge($posts);

我试图使用如上面的代码所示,但似乎我陷入了这种问题(因为其中一些具有相同的值):merge()id

集合合并吃掉了一些行

有什么想法吗?


答案 1

对于 5.4 <版本,您可以通过使用 toBase 重置键来合并两个雄辩的集合,如下所示:

$mergedCollection = $entries->toBase()->merge($posts);

对于版本 >= 5.4,您可以按照 Jason 的建议使用。concat


答案 2

我相信你可能正在寻找.这会将一个容器追加到另一个容器的末尾,而不考虑其中任何一个容器的键。concat()

$mergedCollection = $entries->concat($posts);