Сравните два разных массива и неустановленный элемент из первого - PullRequest
0 голосов
/ 03 октября 2010

Привет, ребята. У меня вопрос. У меня есть два разных массива с разной структурой, и я хочу сравнить значения и сбросить общие значения. Первые массивы выглядят так:

Array ( [0] => Array ( [key1] => value1 [key2] => value2 ) [1] => Array ( [key1] => value3 [key2] => value4 ) [2] => Array ( [key1] => value5 [key2] => value6 ) [3] => Array ( [key1] => value7 [key2] => value9 ) [4] => Array ( [key1] => value11 [key2] => value13 ))

Второй массив выглядит так:

Array ( [0] => value1 [1] => value3 [2] => value9)

Итак, мне нужно проанализировать все значения из первого массива и сравнить первый ключ с элементами из второго массива. Примерно так

foreach($array1 as $ar1){
    foreach($array2 as $ar2){
        if($ar1['key1'] == $ar2){
            unset($array1[$ar1]);
        }
    }
}

Я пробовал все, но это не работает. Первый массив генерируется, поэтому я не могу изменить его структуру. Второй сделан вручную. После процесса первый массив будет выглядеть так:

 Array ([2] => Array ( [key1] => value5 [key2] => value6 ) [3] => Array ( [key1] => value7 [key2] => value8 ))

Помогите мне с некоторыми идеями. Спасибо

1 Ответ

0 голосов
/ 03 октября 2010

Попробуйте это:

foreach($array1 as $k => $ar1){
    foreach($array2 as $ar2){
        if($ar1['key1'] == $ar2){
            unset($array1[$k]);
        }
    }
}
...