Laravel 5.2 - 获取查询字符串

时间:2017-05-24 14:04:45

标签: php laravel laravel-5.2 query-string

如何从我的刀片模板中的网址获取查询字符串?例如,如果我有以下查询字符串:

search?foo[]=1&foo[]=2&bar[]=1

我尝试将其附加到我的刀片模板中的链接,如下所示:

<a href="/saved-search/create?{{ http_build_query(app('request')->query()) }}">
   Set up saved search
</a>

但是这会通过包含数组索引数来生成查询字符串,如下所示:

foo[0]=1&foo[1]=2&bar[0]=1

如何根据原始网址获取查询字符串?

2 个答案:

答案 0 :(得分:0)

您应该使用getQueryString方法。

<a href="/saved-search/create?{{ app('request')->getQueryString() }}">
   Set up saved search
</a>

它返回一个随时可用的urlencoded字符串:

string(35) "bar%5B%5D=1&foo%5B%5D=1&foo%5B%5D=2"

此外,始终可以使用默认的PHP $_SERVER数组:

var_dump($_SERVER['QUERY_STRING']);

>>> string(23) "foo[]=1&foo[]=2&bar[]=1"

答案 1 :(得分:0)

试试这个

<a href="{{ url('/saved-search/create', app('request')->query()) }}">
      Set up saved search
</a>