(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 истинно. Другими словами, выполняется строгая проверка типа,
поэтому требуется, чтобы строковое представление было идентичным.