Função php array_intersect_assoc

Função php array_intersect_assoc
Às vezes, precisamos obter apenas valores comuns de várias matrizes que possuem pares de valor-chave no PHP. Para implementar esse cenário, Array_interct_assoc () é usado para retornar teclas comuns com valores de duas ou várias matrizes de entrada. Esta função comparará a chave e o valor.

Sintaxe:
Array_intersect_assoc (Array_input1, Array_input2,…)

São necessários matrizes de entrada como parâmetros.

É necessário ter pelo menos duas matrizes dentro da função Array_intersect_assoc ().

Agora, vamos explorar esta função discutindo vários exemplos.

Exemplo 1:
Neste exemplo, criamos 2 matrizes: Flower1 com valores-chave. 'FLOR_NAME' => 'LOTUS', 'SEPAL' => 4, 'PETAL' => 3, 'ÁREA' => 'Água' e Flower2 com valores-chave: 'FLOR_NAME' => 'LOTUS', 'SEPAL' => 3, 'PETAL' => 4, 'área' => 'água'.

Depois, realizaremos Array_interct_assoc () nessas duas matrizes.

// Crie uma matriz chamada Flower1 com 4 valores
$ Flor1 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower2 com 4 valores
$ Flor2 = array ('flor_name' => 'lotus', 'sépal' => 3, 'petal' => 4, 'área' => 'água');
print_r ("Matrizes reais:");
print_r ($ flor1);
print_r ($ flor2);
print ("Interseção:");
// interseção em flor1 e flor2
print_r (Array_intersect_assoc ($ flor1, $ flor2));
?>

Saída:

Podemos ver que flores_name => lótus e área => água são os dois pares que são comuns em ambas as matrizes.

Exemplo 2:
Neste exemplo, criamos 2 matrizes: Flower1 com valores-chave. 'FLOR_NAME' => 'LOTUS', 'SEPAL' => 4, 'PETAL' => 3, 'AREA' => 'Água' e Flower2 com valores-chave: 'FLOR_NAME' => 'Lilly', 'Sepal' => 3, 'PETAL' => 4, 'área' => 'terra'.

Depois, realizaremos Array_interct_assoc () nessas duas matrizes.

// Crie uma matriz chamada Flower1 com 4 valores
$ Flor1 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower2 com 4 valores
$ Flor2 = array ('flor_name' => 'lilly', 'sépal' => 3, 'petal' => 4, 'área' => 'terra');
print_r ("Matrizes reais:");
print_r ($ flor1);
print_r ($ flor2);
print ("Interseção:");
// interseção em flor1 e flor2
print_r (Array_intersect_assoc ($ flor1, $ flor2));
?>

Saída:

Podemos ver que nenhum par é comum nas duas matrizes. Portanto, a matriz vazia é devolvida.

Exemplo 3:
Neste exemplo, criamos 3 matrizes: Flower1 com valores-chave.
'FLOR_NAME' => 'LOTUS', 'SEPAL' => 4, 'PETAL' => 3, 'AREA' => 'água',
Flor2 com valores-chave: 'flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água' e
FLOR3 com valores-chave: 'flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água' e

Depois, realizaremos Array_interct_assoc () nessas três matrizes.

// Crie uma matriz chamada Flower1 com 4 valores
$ Flor1 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower2 com 4 valores
$ Flor2 = array ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower3 com 4 valores
$ Flor3 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
print_r ("Matrizes reais:");
print_r ($ flor1);
print_r ($ flor2);
print_r ($ flor3);
// interseção em flor1, flor2 e flor3
print ("Interseção:");
print_r (Array_intersect_assoc ($ flor1, $ flor2));
?>

Saída:

Podemos ver que 'flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água' é comum nas três matrizes. Portanto, eles foram devolvidos.

Exemplo 4:
Neste exemplo, criamos 4 matrizes: Flower1 com valores-chave. 'FLOR_NAME' => 'LOTUS', 'SEPAL' => 4, 'PETAL' => 3, 'AREA' => 'água',
Flower2 com valores-chave: 'flor_name' => 'lotus', 'sépal' => 6, 'pétala' => 3, 'área' => 'terra',
FLOR3 com valores-chave: 'flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água' e
Flor4 com valores-chave: 'flor_name' => 'lotus', 'sépal' => 4.

Depois, realizaremos Array_interct_assoc () nessas quatro matrizes.

// Crie uma matriz chamada Flower1 com 4 valores
$ Flor1 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower2 com 4 valores
$ FLOR2 = Array ('FLOR_NAME' => 'LOTUS', 'SEPAL' => 6, 'PETAL' => 3, 'área' => 'Land');
// Crie uma matriz chamada Flower3 com 4 valores
$ Flor3 = matriz ('flor_name' => 'lotus', 'sépal' => 4, 'petal' => 3, 'área' => 'água');
// Crie uma matriz chamada Flower4 com 4 valores
$ Flor4 = array ('flor_name' => 'lotus', 'sépal' => 4);
print_r ("Matrizes reais:");
print_r ($ flor1);
print_r ($ flor2);
print_r ($ flor3);
print_r ($ flor3);
// interseção em flor1, flor2, flor3 e flor4
print ("Interseção:");
print_r (Array_intersect_assoc ($ flor1, $ flor2, $ flor3, $ flor4));
?>

Saída:

Podemos ver que 'flor_name' => 'lotus' é comum em todas as quatro matrizes. Portanto, é devolvido.

Conclusão

Neste tutorial do PHP, vimos como realizar a interseção em matrizes com base em pares de valor-chave usando Array_interct_assoc (). Ele retorna os pares que são comuns em todas as matrizes dadas. Discutimos quatro exemplos diferentes para entender melhor o conceito.