Search code examples
phparraysmultidimensional-arrayarray-difference

Get the diff between two 2-dimensional arrays


I need to get difference between $array1 & $array2 based on StudentId column values.

 $array1 = array(
     array('StudentId' => 1),
     array('StudentId' => 2)
 );
 $array2 = array(
     array('StudentId' => 1)
);

The output should be:

Array ( [0] => Array ( [StudentId] => 2 ) )

Solution

  • I solved this as following,

    $array1 = array( array( 'StudentId' => 1 ), array( 'StudentId' => 2 ) );
    $array2 = array( array( 'StudentId' => 1 ));
    foreach($array1 as $a=>$val){
         if(in_array($val,$array2)){
              unset($array1[$a]);
         }
    }
    
    var_dump(array_values($array1));