array_intersect

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

array_intersectCalcula la intersección de arrays

Descripción

function array_intersect(array $array, array ...$arrays): array

array_intersect() devuelve un array conteniendo todos los valores de array que están presentes en todos los otros argumentos. Téngase en cuenta que las claves son preservadas.

Parámetros

array

El array conteniendo los valores maestros a verificar.

arrays

Arrays a comparar contra

Valores devueltos

Devuelve un array conteniendo todos los valores del array array cuyos valores existen en todos los argumentos.

Historial de cambios

Versión Descripción
8.0.0 Esta función puede ser llamada ahora con un solo parámetro. Anteriormente, al menos dos parámetros eran necesarios.

Ejemplos

Ejemplo #1 Ejemplo con array_intersect()

<?php
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);
?>

El ejemplo anterior mostrará:

Array
(
    [a] => green
    [0] => red
)

Notas

Nota:

Dos elementos son considerados iguales si y solo si (string) $elem1 === (string) $elem2. En claro: cuando la representación en string es idéntica.

Véase también

add a note

User Contributed Notes 21 notes

up
176
stuart at horuskol dot co dot uk
18 years ago
A clearer example of the key preservation of this function:

<?php

$array1 = array(2, 4, 6, 8, 10, 12);
$array2 = array(1, 2, 3, 4, 5, 6);

var_dump(array_intersect($array1, $array2));
var_dump(array_intersect($array2, $array1));

?>

yields the following:

array(3) {
  [0]=> int(2)
  [1]=> int(4)
  [2]=> int(6)
}

array(3) {
  [1]=> int(2)
  [3]=> int(4)
  [5]=> int(6)
}

This makes it important to remember which way round you passed the arrays to the function if these keys are relied on later in the script.