Функция array-intersect-key - Вычислить пересечение массивов, сравнивая ключи

array_intersect_key

Поддерживаемые версии PHP: (PHP 5 >= 5.1.0, PHP 7)

array_intersect_keyВычислить пересечение массивов, сравнивая ключи

Описание функции

array array_intersect_key ( array $array1 , array $array2 [, array $... ] )

array_intersect_key() возвращает массив, содержащий все элементы array1, имеющие ключи, содержащиеся во всех последующих параметрах.

Параметры

array1

Основной проверяемый массив.

array2

Массив, с которым идет сравнение.

...

Переменный список сравниваемых массивов

Возвращаемые значения

Возвращает ассоциативный массив, содержащий все элементы array1, имеющие ключи, содержащиеся во всех остальных параметрах.

Примеры работы

Пример #1 Пример выполнения array_intersect_key()

<?php
$array1 
= array('blue'  => 1'red'  => 2'green'  => 3'purple' => 4);
$array2 = array('green' => 5'blue' => 6'yellow' => 7'cyan'   => 8);

var_dump(array_intersect_key($array1$array2));
?>

Результат выполнения:

array(2) {
  ["blue"]=>
  int(1)
  ["green"]=>
  int(3)
}

В нашем примере только ключи 'blue' и 'green' содержатся в обоих массивах и поэтому возвращаются. Также обратите внимание, что значения, соответствующие ключам 'blue' и 'green' различны в исходных массивах. Совпадение все равно происходит, так как сравниваются только ключи. Возвращаемые значения берутся из array1.

Два ключа пар key => value считаются равными только, если (string) $key1 === (string) $key2 . Другими словами, применяется строгая проверка, означающая, что строковые представления должны быть одинаковыми.


Возврат к списку