La differenza è molto semplice. Con array_map puoi passare più array come argomento, mentre, con la funzione array_walk puoi passare solo un array

array_map -- Applies the callback to the elements of the given arrays
array_walk -- Apply a user function to every member of an array