Php 如何合并两个数组,然后缩短结果数组,因为合并的数组值首先与键值无关
$community获得所有社区。 $starred communities获得所有starred communities。 然后两者合并 下面是代码:Php 如何合并两个数组,然后缩短结果数组,因为合并的数组值首先与键值无关,php,arrays,laravel,Php,Arrays,Laravel,$community获得所有社区。 $starred communities获得所有starred communities。 然后两者合并 下面是代码: $communities = Community::all(); $starred_communities = StarredCommunity::where('user_id',1)->get(); $communities = $communities->merge($starred_communities); 我想结果数组应
$communities = Community::all();
$starred_communities = StarredCommunity::where('user_id',1)->get();
$communities = $communities->merge($starred_communities);
我想结果数组应该在起始位置获得$starred_社区。目前,根据两条记录的主键,结果被短接。这应该可以做到:
$communities = Community::all();
$starred_communities = StarredCommunity::where('user_id',1)->get();
$merged = $communities->toBase()->merge($starred_communities);
Illumb\Database\Eloquent\Collection
类使用Eloquent模型的键(id
默认情况下)作为索引,而Illumb\Support\Collection
不关心这一点。Try应该可以:
$communities = Community::get();
$starred_communities = StarredCommunity::where('user_id',1)->get();
$merged = $starred_communities->merge($communities);
当你以这种方式合并它们时会发生什么?根据primarry Keys,它会缩短结果。我没有得到你。你能用想要的$communities输出样本编辑你的问题吗?你现在得到了什么?我不知道你所说的短数组是什么意思。你能给出一个真实的例子吗?你的意思是你想要一个数组,其中第一个条目是星号社区,然后是普通社区?像这样的[starred,starred,normal,normal…]
抱歉,看起来我把变量翻转了。我更新了这个例子