(PHP 4 >= 4.3.0, PHP 5, PHP 7)
array_intersect_assoc — Computa a interseção de arrays com uma adicional verificação de índice
$array1
, array $array2
[, array $...
] ) : array
array_intersect_assoc() retorna um array
contendo todos os valores de array1
que estão presentes em todos os argumentos. Note que estas chaves também são usadas na
comparação diferindo de array_intersect().
array1O array com os valores a serem verificados.
array2O array para comparar os valores.
arrayUma lista de arrays para comparação.
Retorna um array associativo contendo todos os valores em
array1 que estão presentes em todos os argumentos.
Exemplo #1 Exemplo da 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);
?>
O exemplo acima irá imprimir:
Array
(
[a] => green
)
Em nosso exemplo você pode ver que somente o par "a" => "green" está presente em ambos array, então logo é retornado. O valor "red" não é retornado porque no $array1 a chave é 0 quando a chave de "red" no $array2 é 1, e a chave "b" não será retornada por que seu valor é diferente em cada array.
Os dois valores dos pares key => value são considerados iguais somente se (string) $elem1 === (string) $elem2 . Em outras palavras uma verificação do tipo é executada então a representação string precisa ser a mesma.