【发布时间】:2013-10-23 23:51:14
【问题描述】:
我试过这样做:
{{ $_GET['page'] }}
但还是不行。
【问题讨论】:
我试过这样做:
{{ $_GET['page'] }}
但还是不行。
【问题讨论】:
对于 $_POST 变量使用这个:
{{ app.request.parameter.get("page") }}
对于 $_GET 变量使用这个:
{{ app.request.query.get("page") }}
对于 $_COOKIE 变量使用这个:
{{ app.request.cookies.get("page") }}
对于 $_SESSION 变量使用这个:
{{ app.request.session.get("page") }}
【讨论】:
Request 对象自 13 年以来已更改。现在你应该使用:{{ app.request.request.get("page") }} 来检索 POST page 变量。
Twig 中唯一可用的变量是:
如果您希望有一个可用的page 变量,请将"page" => $_GET["page"] 添加到render 的第二个参数。
如果您希望有完整的$_GET 超全局可用,请将"GET" => $_GET 添加到render 的第二个参数。
【讨论】:
您无法在 TWIG 中访问原始 PHP 值,因此您必须将所需的任何内容附加到 twig 对象。
这是将$_GET、$_POST 和$_SESSION 附加到树枝的示例。
//initialise your twig object
$loader = new \Twig_Loader_Filesystem(__PATH_TO_TEMPLATES_FOLDER__');
$this->twig = new \Twig_Environment($loader);
$this->twig->addGlobal('_session', $_SESSION);
$this->twig->addGlobal('_post', $_POST);
$this->twig->addGlobal('_get', $_GET);
现在假设您有一个名为 username 的值存储在上述每个中($_GET、$_POST 和 $_SESSION)
您现在可以在模板中访问所有这些内容,如下所示。
{{ _session.username }}
{{ _post.username }}
{{ _get.username }}
希望对你有帮助
【讨论】:
另一个可行的解决方案@ 2019
app.request.get('page')
app.request.request.get('page')
【讨论】: