Função array_intersect_assoc() do PHP

Exemplo

Comparar os nomes de chave e valores de dois arrays e retornar a interseção:

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2 = array("a" => "red", "b" => "green", "c" => "blue");
$result=array_intersect_assoc($a1, $a2);
print_r($result);
?>

Executar exemplo

Definição e uso

A função array_intersect_assoc() é usada para comparar os nomes de chave e valores de dois (ou mais) arrays e retornar a interseção.

Esta função compara os nomes de chave e valores de dois (ou mais) arrays e retorna um array de interseção, que inclui todos os elementos presentes em todos os arrays comparados (array1) e também em qualquer outro array de parâmetros (array2 ou array3 etc.) as nomes e valores das chaves.

Descrição

A função array_intersect_assoc() retorna o array de interseção de dois ou mais arrays.

com array_intersect( A função é diferente, pois além de comparar os valores das chaves, também compara os nomes. Os nomes dos elementos do array retornado permanecem inalterados.

Sintaxe

array_intersect_assoc(array1,array2,array3...)
Parâmetros Descrição
array1 Obrigatório. O primeiro array a comparar com os outros arrays.
array2 Obrigatório. O array a comparar com o primeiro array.
array3,... Opcional. Outros arrays a comparar com o primeiro array.

Detalhes técnicos

Retorno: Retorna o array de interseção, que inclui todas as chaves em todos os arrays comparados (array1) e também em qualquer outro array de parâmetros (array2 ou array3 etc.) as nomes e valores das chaves.
Versão PHP: 4.3.0+

Mais exemplos

Exemplo 1

Comparar os nomes e valores das chaves de três arrays e retornar a interseção:

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"red","b"=>"green","g"=>"blue");
$a3=array("a"=>"red","b"=>"green","g"=>"blue");
$result=array_intersect_assoc($a1,$a2,$a3);
print_r($result);
?>

Executar exemplo