如何通过键而不是值来实现 PHP array_intersect?

How to do PHP array_intersect by keys not by values?

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

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

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

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

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

是的,只需使用 array_intersect_key()

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

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

var_dump(array_intersect_key($master, $check));
$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']; =13=]

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