2015-12-03 2 views
0

Вот мой массив образцов. У меня есть еще один подобный этому с ТОЧНЫМ таким же количеством элементов (25 элементов массива в случае). Приложение дает мне 2 идентификатора из этих массивов, например: 355 из массива # 1 и 888 из массива # 2, и мне нужно сравнить, если соответствующий родительский массив id равен.Сравните два массива на основе значения элемента дочернего массива в PHP

Если мой массив, где ID: 355, является 0-м элементом из родительского массива, как 888 из массива # 2. Таким образом, чтобы убедиться, что если 0 = 0.

Массив # 1

Array 
(
[0] => Array 
    (
     [id] => 355 
     [name] => 1 
     [desc] => 1 
     [price] => 0 
    ) 

[1] => Array 
    (
     [id] => 356 
     [name] => 1 
     [desc] => 2 
     [price] => 0 
    ) 

[2] => Array 
    (
     [id] => 357 
     [name] => 2 
     [desc] => 3D 
     [price] => 0 
    ) 
... 

Вот массив # 2

Array 
(
[0] => Array 
    (
     [id] => 888 
     [name] => 15 
     [desc] => 1D 
     [price] => 0 
    ) 

[1] => Array 
    (
     [id] => 889 
     [name] => 16 
     [desc] => 2D 
     [price] => 0 
    ) 

[2] => Array 
    (
     [id] => 890 
     [name] => 17 
     [desc] => 3D 
     [price] => 0 
    ) 
... 

Я действительно не мог понять, как объяснить это лучше.

Любые идеи приветствуются.

ответ

2
$match = true; 
foreach ($array1 as $key => $value) { 
    foreach ($value as $subkey => $subvalue) { 
     if ($array1[$key][$subkey] != $array2[$key][$subkey]) { 
      $match = false; 
     } 
    } 
} 

if (false === $match) { 
    // The arrays are not the same 
} 
Смежные вопросы