1-merge array1 and array2 overwriting array2 with values of array1, and adding missing keys.
$a1 = $a1 + $a2;
2-merge $array1 with $array2 overwritting $array2 with values from $array1, yet neglect extra data in array1 (above example should neglect name)
$a2 = $a2 + $a1;
3-how can i unset all array_keys from $array1 which is in $filter
array_walk($array1, function($val,$key) use(&$array1, $filter) {
if(in_array($key, $filter)) unset($array1[$key]);
});
4-how to only return part of the array from $array1 where keys exist in $filter
array_walk($array1, function($val,$key) use(&$array1, $filter) {
if(!in_array($key, $filter)) unset($array1[$key]);
});