使用 PHP 在多个数组中查找常用值

2022-08-30 18:52:55

我需要在多个数组中找到共同的值。数组的数量可能是无限的。示例(输出自print_r)

Array1
(
    [0] => 118
    [1] => 802
    [2] => 800
)
Array2
(
    [0] => 765
    [1] => 801
)
Array3
(
    [0] => 765 
    [1] => 794
    [2] => 793
    [3] => 792
    [4] => 791
    [5] => 799
    [6] => 801
    [7] => 802
    [8] => 800
)

现在,我需要找到所有3个(或更多,如果可用)上通用的值。...我该怎么做?

感恩节


答案 1

array_intersect()

$intersect = array_intersect($array1,$array2,$array3);

如果您不知道您有多少个数组,请构建一个数组数组并call_user_func_array()

$list = array();
$list[] = $array1;
$list[] = $array2;
$list[] = $array3;
$intersect = call_user_func_array('array_intersect',$list);

答案 2