删除基于关键字的数组元素


Remove Array Elements Based on Key

我有一个数组:

array(
  '1' => red,
  '2' => green,
  '3' => blue,
  '4' => orange
);

第二个阵列:

array(
  '0' => 1,
  '1' => 4
);

我只想保留数组1中键值等于数组2中值的那些元素。

所以最后的数组应该是这样的:

array (
    '1' => red,
    '4' => orange
);

使用array_intersect_key获取共享密钥的值(在第二个数组上使用array_flip之后)。

$array3 = array_intersect_key($array1, array_flip($array2));

将array_entersect_key与array_flicp、一起使用

$r = array_intersect_key($a, array_flip($b));