我有这两个数组
Array ONE
(
[39] => Dude, Harry [10%]
[36] => Occonell, Tim [90%]
)
Array TWO
(
[1] => Person, Admin
[2] => Snow, John
[3] => Jane, Marry
[14] => Kelchenko, Igory
[18] => Bery, Grass
[36] => Occonell, Tim
)
我试图从第二个数组中删除值,如果它的键等于第一个。所以我的数组应该是这样的:
Array TWO
(
[1] => Person, Admin
[2] => Snow, John
[3] => Jane, Marry
[14] => Kelchenko, Igory
[18] => Bery, Grass
)
array_diff()
的方向是正确的,但是你想用数组的键做一些事情,所以使用:array_diff_key()
,例如
print_r(array_diff_key($array2, $array1));
例如:
$array2 = [
1 => "a",
2 => "b",
3 => "c",
4 => "d",
5 => "e",
];
$array1 = [
2 => "Don't want this key",
4 => "Also don't want this one",
];
输出将是:
Array (
1 => a
3 => c
5 => e
)
你可以这样做
foreach($arr_one as $key => $val){
if(isset($array_2[$key])) unset($array_2[$key]);
}