1
У меня есть два многомерных массива той же структуры.Как сравнить два многомерных массива по определенным ключам в каждом?
Как это:
array(2) {
[0] =>
array(9) {
'id' =>
string(5) "44994"
'ersatzteil_id' =>
string(3) "120"
'lang' =>
string(6) "name2_tag2"
'title' =>
string(12) "Seitentüren"
'alias' =>
string(12) "seitentueren"
'content' =>
string(1610) "LOREM ISPUM BLALABLBL"
'on_main' =>
string(1) "0"
'disabled' =>
string(1) "1"
'short_text' =>
NULL
}
[1] =>
array(9) {
'id' =>
string(5) "44996"
'ersatzteil_id' =>
string(3) "122"
'lang' =>
string(6) "name1_tag1"
'title' =>
string(7) "Spoiler"
'alias' =>
string(7) "spoiler"
'content' =>
string(1513) "SOME OTHER RANDOM TEXT"
'on_main' =>
string(1) "0"
'disabled' =>
string(1) "0"
'short_text' =>
NULL
}
}
Что мне нужно сделать, это мне нужно сравнить первый массив со вторым. Мне нужно сравнить их по ключам ersatzteil_id
и content
, и я обнаружил, что у них одинаковый контент. Мне нужно сохранить элемент из первого массива в другом новом массиве, который раньше не существовал.
Например мне нужно что-то вроде этого, но более эффективным:
if(array1[20]['ersatzteil_id'] == array2[145]['ersatzteil_id']
&& array1[20]['content'] == array2[145]['content']){
array3 = array1[20];
}
Посмотрите на [array_uintersect] (Http: //de2.php. net/manual/en/function.array-uintersect.php) или [array_uintersect_assoc] (http://de2.php.net/manual/en/function.array-uintersect-assoc.php). – ccKep
Почему, на ваш взгляд, ваш код недостаточно эффективен? –