Laravel路线包括所有$ _GET参数

时间:2016-12-15 11:28:36

标签: php laravel

我使用Laravel 5.3并命名了所有路线。

我想使用route()函数并包含我的$ _GET参数。

这是我尝试过的:

<a href="{{ route('myRoute', ['id' => $id, 'slug' => str_slug($name)], request()->all()]) }}">

<a href="{{ route('myRoute', [array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())]) }}">

目前,我收到了此错误

  

UrlGenerator.php第377行中的ErrorException:数组到字符串   转换(查看:....

有没有办法包括所有参数?我不想一个一个地列出它们。感谢

编辑

我的代码出错,现在可以使用:

<a href="{{ route('myRoute', array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())) }}">

2 个答案:

答案 0 :(得分:0)

request()->all()['id' => $id, 'slug' => str_slug($name)]是数组,您尝试将其作为字符串传递。当您拥有大量数据时,最好使用POST方法传递它。

答案 1 :(得分:0)

便宜的黑客就是这样:

<a href="{{ route('myRoute') . '?' . http_build_query(array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())) }}">

http_build_query将关联数组转换为GET参数字符串(没有起始?)。