Создаёт новую коллекцию пар, созданную пересечением с другой коллекцией пар

# Ds\Map::intersect

(PECL ds >= 1.0.0)

Ds\Map::intersect — Создаёт новую коллекцию пар, созданную пересечением с другой коллекцией пар

### Описание

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

Создаёт новую коллекцию пар из текущей, содержащую элементы, ключи которых присутствуют как в текущей коллекции, так и в переданной в параметре `map`. Другими словами, возвращает копию текущей коллекции, из которой удалены все элементы, ключи которых отсутствуют в коллекции из `map`.

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

> Замечание:

> Значения берутся из текущей коллекции пар.

### Список параметров

`map`

  Новая коллекция типа 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)
      }
    }

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open