Php 是否可以在来自TWIG的$\u GET |$\u POST |$\u SESSION |$\u COOKIE中设置/插入新变量?

Php 是否可以在来自TWIG的$\u GET |$\u POST |$\u SESSION |$\u COOKIE中设置/插入新变量?,php,symfony,session,twig,Php,Symfony,Session,Twig,我有一个要求,可能需要我在TWIG中为 {{app.request.query}}即$\u GET {{app.request.request}}即$\u POST {{app.request.session}}即$\u session {{app.request.cookies}}即$\u COOKIE e、 g.{%app.request.query.set'myvariable':'value'%}…在PHP中调用Twig->render之前,您可以轻松地将元素附加到数组中 简单地写 $_

我有一个要求,可能需要我在TWIG中为

{{app.request.query}}即$\u GET {{app.request.request}}即$\u POST {{app.request.session}}即$\u session {{app.request.cookies}}即$\u COOKIE
e、 g.{%app.request.query.set'myvariable':'value'%}…

在PHP中调用Twig->render之前,您可以轻松地将元素附加到数组中

简单地写

$_GET['myvariable'] = $value

如果您想在TWIG中设置变量,我知道:

For $_POST variables use this :
{{ app.request.request.add(['var1', 'data1']) }}
{{ app.request.request.get(0) }}
{{ app.request.request.get(1) }}

For $_GET variables use this :
{{ app.request.query.add(['var2', 'data2']) }}
{{ app.request.query.get(0) }}
{{ app.request.query.get(1) }}

For $_COOKIE variables use this :
{{ app.request.cookies.add(['var3' , 'data3']) }}
{{ app.request.cookies.get(0) }}
{{ app.request.cookies.get(1) }}

For $_SESSION variables use this :
{{ app.session.set('var4', 'data4') }}
{{ app.session.get('var4') }} <!-- shows 'data4 -->
Or
{{ app.request.session.set('var4', 'data4') }}
{{ app.request.session.get('var4') }} # shows 'data4

谢谢你的回答,但我正在寻找一个答案来设置TwigBundle Symfony中的变量。这就是我一直在寻找的。我会等一天两天接受这个答案,这样如果其他人想添加更多信息,他们就有机会了。你为什么需要这样做?一定有更好的解决办法。@Maerlyn我有一个twig文件,其中我必须使用{javascript block}中{body block}中设置的twig变量。由于块限制了变量的范围,并且全局设置变量不允许我将{body block}中的值获取到我的{javascript block},因此我必须找到替代方法来完成我需要的操作。因此,在twig中使用set/add作为请求/会话。这种逻辑应该放在控制器或twig扩展中。