$res = []; foreach ($arr as $i) { foreach (make_res($i) as $v) { $res[] = $v; }} Array_merge in loop is very sloop so it is not a solution. which I propose to shorten to:
$res = []; foreach ($arr as $i) { $res[...] = make_res($i);} Appending multiple elements to an array is very common use-case.
With kind regards / Mit freundlichen Grüßen / S přátelským pozdravem,
Michael Voříšek