Различия между функциями arrayintersect и arrayintersect_key заключаются в том, что они выполняют разные операции при вычислении пересечения массивов. 15
array_intersect возвращает массив значений, которые существуют во всех переданных ей массивах. 1 При этом функция проверяет только значения массивов. 1
arrayintersectkey проверяет только пересечение ключей и возвращает ключи во всех массивах. 15 Функция выводит только те элементы первого массива, ключи которых совпадают с элементами всех других массивов. 5
Кроме того, arrayintersectkey обычно эффективнее array_intersect при большом количестве пересечений, так как использует хэш-таблицы для более эффективного поиска. 34