How is this different from array_merge?