函数所需参数达到6到7个或更多,怎么样写合适

比如一个按条件取得列表的函数:
需要参数为:
1.用户id
2.当前分页
3.需分页数量
4.订单类别。
5.订单所含关键字
6.订单来源
7.订单价格范围
。。。。。
关于订单的选项还可能更多。
如果需要这样的函数,应该如何实现函数呢?
[b]形式1:最常见的:[/b]
function xxxx($用户id,$当前分页,$需分页数量,$订单类别,$订单所含关键字,$订单来源,$订单价格范围.......){}
[b]形式2:将检索相关用途雷同的参数合并为数组:[/b]
/**
*.......
*$searchArr['订单类别']
*$searchArr['订单所含关键字']
*$searchArr['订单来源']
*$searchArr['订单价格范围']
*/
function xxxx($用户id,$当前分页,$需分页数量,$searchArr){}
请教一下各位,
那种方式更好。
一定有更好的解决方法,期待回复!!

好一点的方式应该是第二种,便于扩展,
将来要多添加字段时,不需要改函数参数,只需要改方法体里的内容

把参数做为一个对象传就好了