(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
array_intersect_assoc — Вычисляет пересечение массивов с дополнительной проверкой индекса
Функция array_intersect_assoc() возвращает массив,
который содержит те значения массива array
,
которые содержатся в каждом аргументе.
Обратите внимание, эта функция, в отличие от функции array_intersect(),
также сравнивает и ключи.
array
Основной проверяемый массив.
arrays
Массивы, с которыми идёт сравнение.
Функция возвращает ассоциативный массив, который содержит те значения массива
array
, которые содержатся в каждом аргументе.
Версия | Описание |
---|---|
8.0.0 | Теперь разрешается вызывать функцию только с одним аргументом. Раньше требовалось не меньше двух аргументов. |
Пример #1 Пример использования функции array_intersect_assoc()
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "blue", "red");
$result_array = array_intersect_assoc($array1, $array2);
print_r($result_array);
?>
Результат выполнения приведённого примера:
Array ( [a] => green )
В примере видно, что только пара "a" =>
"green"
, содержится в обоих массивах и поэтому возвращается.
Значение "red"
не возвращается, потому что в массиве
$array1 ключ значения — 0
, тогда как
ключ значения "red" в массиве $array2 —
1
. Ключ "b"
не возвращается,
потому что значения ключа различны в каждом массиве.
Два значения пар key => value
признаются равными, только если выражение (string) $elem1 === (string)
$elem2
истинно. Другими словами, выполняется строгая проверка типа,
поэтому требуется, чтобы строковое представление было идентичным.