Ds\Map::intersect

(PECL ds >= 1.0.0)

Ds\Map::intersectCria um novo mapa intersectando chaves com outro mapa

Descrição

public Ds\Map::intersect(Ds\Map $map): Ds\Map

Cria um novo mapa contendo os pares da instância atual cujas chaves também estão presentes no map fornecido. Em outras palavras, retorna uma cópia da instância atual com todas as chaves removidas que não estão no outro map.

A ∩ B = {x : x ∈ A ∧ x ∈ B}

Note:

Os valores da instância atual serão mantidos.

Parâmetros

map

O outro mapa, contendo as chaves para intersectar.

Valor Retornado

A interseção de chaves da instância atual e outro map.

Veja Também

Exemplos

Example #1 Ds\Map::intersect() exemplo

<?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));
?>

O exemplo acima produzirá algo semelhante a:

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)
  }
}