5

$master = ['111' => 'foo', '124' => 'bar', '133' => 'baz'];

$check = ['111' => 14, '133' => 23 ]';

我想从中删除所有$master不存在于$check. 所以这个例子中的结果应该是:

$newMaster = ['111' => 'foo', '133' => 'baz'];

知道怎么做吗?提前致谢。

4

3 回答 3

4

是的,只需使用array_intersect_key()

$newMaster = array_intersect_key($master, $check);
于 2016-01-11T12:15:28.527 回答
0

是的,您可以简单地使用:

var_dump(array_intersect_key($master, $check));
于 2016-01-11T12:29:03.687 回答
0
$master = ['111' => 'foo', '124' => 'bar', '133' => 'baz'];

$check = ['111' => 14, '133' => 23 ];


$intersectArray = array_intersect_key($master, $check);

这里的键将使用array_intersect_key()函数进行比较,它将比较您在 $master 中的 $check 键并为您提供 $check 键在 $master 中匹配的结果,并且您['111' => 'foo', '133' => 'baz'];$intersectArray

有关更多详细信息,您将查看此链接http://php.net/manual/en/function.array-intersect-key.php

于 2016-01-11T12:33:34.170 回答