(PECL ds >= 1.0.0)
Ds\Map::intersect — 通过与另一个映射相交键来创建一个新的映射
创建一个新的映射,其中包含当前实例的对,其键也存在于给定的$map
中。换句话说,返回当前实例的副本,其中已删除所有不在另一个$map
中的键。
A ∩ B = {x : x ∈ A ∧ x ∈ B}
注意:
将保留当前实例中的值。
map
另一个映射,包含要与其相交的键。
当前实例和另一个$map
的键交集。
示例 #1 Ds\Map::intersect() 示例
<?php
$a = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3]);
$b = new \Ds\Map(["b" => 4, "c" => 5, "d" => 6]);
var_dump($a->intersect($b));
?>
以上示例将输出类似以下内容
object(Ds\Map)#3 (2) { [0]=> object(Ds\Pair)#4 (2) { ["key"]=> string(1) "b" ["value"]=> int(2) } [1]=> object(Ds\Pair)#5 (2) { ["key"]=> string(1) "c" ["value"]=> int(3) } }