Are both of these `&` really necessary? According to us, it would work the same without them. The `&` before the the function name shouldn't be needed, because you create and return a _new_ array `$params`. 
`$route` is not modified, so it doesn't need to be a reference, right?