Как обработать все аргументы функции?
func_get_args возвращает копии переданных аргументов, так же, как и func_get_arg.
Само собой, изменения в копии никак не отразятся на самих аргументах.
function change(string &$x)
{
    $x = trim($x);var_dump($x);
}
$v = "  bar  ";change($v);var_dump($v);

Под разное кол-во аргументов:
function change(string &$x0 = "", string &$x1 = "", string &$x2 = "")
{
    for ($i = 0; $i < func_num_args(); $i++)
    {
        $s = "x{$i}";$$s = trim($$s);
    }
}
$v = "  bar  ";$w = "  foo  ";
change($v);var_dump($v, $w);
change($v, $w);var_dump($v, $w);