2017-08-21 4 views
1

多次元配列私は多次元配列の違いを見つける必要がある違い

私はこのような配列を持っている:

$arr1 = array(
     'test1' => array( 
      'XXX' => array(
       'w1'  => array('id' =>  '5'), 
       'w2'  => array('id' =>  '2'), 
       'w3'  => array('id' =>  'g'), 
      ), 
      'YYY' => array(
       'w1'  => array('id' =>  '4'), 
       'w2'  => array('id' =>  '1') 
      ), 
      'ZZZ' => array(
       'w1'  => array('id' =>  '3'), 
       'w2'  => array('id' =>  '9') 
      ), 
      'QQQ' => array(
       'w1'  => array('id' =>  '3'), 
       'w2'  => array('id' =>  '9') 
      ),    
     ), 
     'test2' => array( 
      'XXX' => array(
       'w1'  => array('id' =>  '8'), 
       'w2'  => array('id' =>  '3') 
      ), 
      'YYY' => array(
       'w1'  => array('id' =>  '15'), 
       'w2'  => array('id' =>  '1') 
      ), 
      'ZZZ' => array(
       'w1'  => array('id' =>  '5'), 
       'w2'  => array('id' =>  '2') 
      ),   
     ), 
     ); 


$arr2 = array(
     'test1' => array(
      'XXX' => array(
       'w1'  => array('id' =>  '5'), 
       'w2'  => array('id' =>  '2'), 
       'w3'  => array('id' =>  'g'), 
       'w4'  => array('id' =>  'x'), 
      ), 
      'YYY' => array(
       'w1'  => array('id' =>  '4'), 
       'w2'  => array('id' =>  '1') 
      ), 
      'ZZZ' => array(
       'w1'  => array('id' =>  '3'), 
       'w2'  => array('id' =>  '9') 
      ), 
     ), 
     );  

そして、私は重複を削除する必要がありますが、私は最初のレベルキー、第二レベルのキーと最後のレベルを比較する必要がありますキーと値のペアはので、私の結果は、私が使用してみてくださいその

array(
      'test1' => array(
       'XXX' => array(
        'w4'  => array('id' =>  'x'), 
       ), 
) 

ようにする必要があり

function check_key($a,$b) { 

if ($a===$b) 
    { 
    return 0; 
    } 
    return ($a>$b)?1:-1;  
} 

function check_value($a,$b) { 

if ($a===$b) 
    { 
    return 0; 
} 
    return ($a>$b)?1:-1; 
} 

$merged_arr = array_udiff_uassoc($arr2,$arr1,"check_key","check_value"); 

しかし、この関数は最後のレベルの最後のレベルのキーと値のペアを比較しません。 私は助けを求めるでしょう

答えて

1

私はそれがあなたに役立つと思う。

$result[] = array_diff_key($arr1, $arr2); 
print_r($result); 
関連する問題