У меня есть два массива, где первые ключи массива похожи на значения второго массива. Я хотел бы получить новый массив со значениями, которые не находятся в первом. Я попытался использовать array_intersect
, но результат не был тем, что я ожидал.
Вот пример двух массивов:
$array1 = array(
'A' => 10,
'B' => 20,
'C' => 30,
'D' => 40,
);
$array2 = array(
'0' => 'A',
'1' => 'B',
);
И я ищу новый массив вроде этого:
$array3 = array(
'0' => 'C',
'1' => 'D',
);
Вы можете использовать этот код:
$array1 = array('A' => 10,'B' => 20,'C' => 30,'D' => 40);
$array2 = array('0' => 'A','1' => 'B');
$array3 = array_keys(array_diff_key($array1, array_flip($array2)));
Мой совет - использовать array_diff
, но проблема в том, что он не устанавливает ключи
$array3 = array_diff(array_keys($array1, $array2))
array_keys(array_diff_key($array1, array_flip($array2)))