php - Multidimentional array difference -


i need find difference between multidimentional arrays

i have arrays :

$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')            ),          ),        );     

and need remove duplicates need compare first level key, second level key , last level key,value pairs results should that

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

i try use

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");  

but function dont compare last level key-value pair in last level . appriciate help

try function.i think helpful you.

$result[] = array_diff_key($arr1, $arr2); print_r($result); 

Comments

Popular posts from this blog

python - Operations inside variables -

Generic Map Parameter java -

arrays - What causes a java.lang.ArrayIndexOutOfBoundsException and how do I prevent it? -