array_intersect una cantidad variable de arreglos
Estoy creando una búsqueda facetada, y estoy tratando de usararray_intersect
para comparar los arrays y encontrar las entradas que coincidan.
El problema es que tendré una cantidad variable de arreglos en cualquier momento, dependiendo de los filtros que el usuario haya seleccionado:
$array_1, $array_2, $array_3
etc ...
¿Cómo creo unarray_intersect
¿Función que es dinámica en este sentido?
Esto es lo que he intentado:
$next_array = 0;
for($i = 0; $i < $array_count; $i++) {
$next_array++;
if ($i == 0) {
$full_array = ${array_.$i};
} else {
if(!empty(${cvp_array.$next_array})) {
$full_array = array_intersect($full_array, ${cvp_array_.$next_array});
}
}
}
------------- EDITAR -------------
Intentaré reducir mi objetivo un poco más:
Si el usuario hace clic en tres filtros, esto genera tres matrices que se crean con resultados individuales:
Array_1 ( [0] => 2, [1] => 4, [2] => 6 )
Array_2 ( [0] => 1, [1] => 4, [2] => 6 )
Array_3 ( [0] => 6, [1] => 7, [2] => 8 )
Necesito un código que encuentre el número que está en TODAS las matrices. Y si no hay un número común, entonces terminaría como falso o algo así. En el caso anterior, necesitaría recuperar 6. Si solo fueran las dos primeras matrices, devolvería 4 y 6.