我有一个数组
[
[0 => 20, 1 => 36, 3 => 42],
[0 => 21, 1 => 42, 2 => 30],
]
我还有第二个数组
[24, 42, 26, 12]
我想使用
array_intersect()
从每个数组中获取相同的值。我遇到的麻烦是弄清楚如何正确设置代码来做到这一点。我希望能有这个
[
[42],
[42],
]
为了匹配您的示例输出,您可以简单地使用
foreach
循环。在您的示例中,二维数组是 $array1,一维数组是 $array2。
$output = [];
foreach ($array1 as $array) {
$output[] = array_intersect($array, $array2);
}
请注意,仅 PHP 版本 >= 5.4 支持使用 [] 声明数组。对于 PHP 版本 < 5.4:
$array1 = array(array(20, 36, 42), array(21, 42, 30));
$array2 = array(24, 42, 26, 12);
$output = array();
foreach ($array1 as $array) {
$output[] = array_intersect($array, $array2);
}