title: PHP Question: how to array_intersect_assoc() recursively
body: <p>Let's say I want to do this:</p>
  
  <pre>
  $a = array_intersect_assoc(
   array(
    'key1' => array(
     'key2' => 'value2'
    ),
    'key3' => 'value3',
    'key4' => 'value4'
   ),
  
   array(
    'key1' => array(
     'key2' => 'some value not in the first parameter'
    ),
    'key3' => 'another value'
   )
  );
  
  var_dump( $a );
  </pre>
  
  <p>The printed result is:</p>
  
  <pre>
  array
    'key1' => 
      array
        'key2' => string 'value2' (length=6)
  </pre>
  
  <p>It's clear that values associated with 'key2' in both arrays are not the same, however <code>array_intersect_assoc()</code> still return <code>'key2' => 'value2'</code> as the intersected value.</p>
  
  <p>Is this the expected behavior of <code>array_intersect_assoc()</code>?</p>
  
  <p>Thanks!</p>