diff 对面的 Laravel 集合

Posted

技术标签:

【中文标题】diff 对面的 Laravel 集合【英文标题】:Laravel collection opposite of diff 【发布时间】:2022-01-17 16:33:13 【问题描述】:

我有 2 个收藏:

$collection = collect([1,2,3,4]);
$collection2 = collect([1,5,6,4]);

与:

$collection->diff($collection2);

我收到[2,3]

所以我想要的是相反的值,[1,4]

收藏中有没有办法或方法来做到这一点?

【问题讨论】:

【参考方案1】:

合并到单个集合后可以使用重复方法

$collection1 = collect([1,2,3,4]);
$collection2 = collect([1,5,6,4]);

$duplicates = $collection1
  ->merge($collection2)
  ->duplicates()
  ->values();

会给你

Illuminate\Support\Collection #1151
     all: [
       1,
       4,
     ],
   

【讨论】:

【参考方案2】:

laravel 合集intersect

intersect 方法从原始集合中删除给定数组或集合中不存在的任何值。

$collection = collect([1,2,3,4]);
$collection2 = collect([1,5,6,4]);

$intersect = $collection->intersect($collection2);

$intersect->all();

【讨论】:

以上是关于diff 对面的 Laravel 集合的主要内容,如果未能解决你的问题,请参考以下文章

laraver框架学习------工厂模型填充测试数据

有关 JSON、cURL 和 laravel 的参考文档

laravel 语言插件

larave学习笔记1-安装配置

Larave中CSRF攻击

Laravel 延迟加载的问题