温馨提示×

php集合 能进行交集运算吗

PHP
小樊
81
2024-12-12 17:52:56
栏目: 编程语言

PHP 的集合类(Collection)没有直接提供交集运算的方法,但你可以使用 filter() 方法来实现交集操作。以下是一个示例:

<?php

use Illuminate\Support\Collection;

$collection1 = new Collection([1, 2, 3, 4, 5]);
$collection2 = new Collection([4, 5, 6, 7, 8]);

// 计算两个集合的交集
$intersection = $collection1->filter(function ($item) use ($collection2) {
    return $collection2->contains($item);
});

// 输出结果
print_r($intersection->all()); // [4, 5]

在这个例子中,我们使用了 filter() 方法来筛选出 $collection1 中与 $collection2 包含相同元素的数据。use 关键字允许我们在闭包函数中访问外部变量(在这里是 $collection2)。最后,我们使用 all() 方法将结果转换为数组并输出。

0