(PECL ds >= 1.0.0)
Ds\Map::intersect — Crear un nuevo mapa intersectando las claves con otro mapa
    Crear un nuevo mapa que contiene las parejas de la instancia actual cuyas claves
    están también presentes en el map dado.
    En otras palabras, devuelve una copia de la instancia actual con todas las claves eliminadas que
    no están también en el otro map.
  
    A ∩ B = {x : x ∈ A ∧ x ∈ B}
  
Nota:
Los valores de la instancia actual serán conservados.
mapEl otro mapa, que contiene las claves a intersectar.
     La intersección de las claves de la instancia actual y de otro map.
    
Ejemplo #1 Ejemplo de 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));
?>Resultado del ejemplo anterior es similar 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)
  }
}
