如何在Laravel中使用params生成url?

时间:2014-11-10 09:04:22

标签: php laravel-4

情况非常棘手......比如我有网址 http://example.com/users

显示所有用户。我也有很少的过滤器,如

http://example.com/users?sort_type=ASC&sort_value=surname

http://example.com/users?sort_type=DESC&sort_value=name

还有一个看起来像这样的搜索

http://example.com/users/search/by_name/?search_value=bob

http://example.com/users/search/by_surname/?search_value=miller

对于搜索,我还需要添加过滤参数,因此主要问题在于第一个符号:当有用户列表时,它应该是?,当搜索&时。那么是否有一些url生成函数用于从URL参数生成url?

1 个答案:

答案 0 :(得分:1)

路由掩码未使用的所有值都将追加为查询参数。 (将路线名称从'用户'更改为您的)

URL::route('users', array(
  'sort_type' => 'ASC',
  'sort_value' => 'surname'
));

如果您不使用路线,请使用类似

的内容
$query = http_build_query(array(
      'sort_type' => 'ASC',
      'sort_value' => 'surname'
));
URL::to(action('UserController@index') . '?' . $query );