Twig使用[]获取url参数

时间:2015-02-11 14:31:31

标签: php symfony twig

我有一个网址:MYURL?filter[_per_page]=25&filter[name][value]=hello

如何用树枝获取这些参数?

我正在尝试{{ app.request.get('filter[_per_page]') }},但它总是空着......

谢谢!

修改:我在javascript中想要将此结果分配给javascript变量,例如:var param = "{{ app.request.get('filter[_per_page]') }}";

4 个答案:

答案 0 :(得分:21)

您必须作为访问filter元素的数组进行管理:

{{ app.request.get('filter')['_per_page'] }}

(这次我在张贴之前尝试...)

答案 1 :(得分:4)

你差不多了。

app对象是GlobalVariables个实例。当您说app.request时,正在调用getRequest()并返回标准Request对象的实例。

现在,如果您查看Request::get()link),则有:

get(string $key, mixed $default = null, bool $deep = false)

我认为你需要做的是:

{{ app.request.get('filter[_per_page]', NULL, true) }}

其中NULL为默认值,true表示deep对象的Request遍历。

答案 2 :(得分:0)

我找到了这样的解决方案:

app.request.attributes.get('request').query.get('param_name')

答案 3 :(得分:0)

要访问查询参数数组,您可以使用:

app.request.attributes.get('_route_params');

您可以在 documentation 上看到不同的解决方案。