Symfony doc说:
在每个请求期间,Symfony2将设置一个全局模板变量app 默认情况下,在Twig和PHP模板引擎中。 app变量是 一个GlobalVariables实例,它可以让你访问一些 自动应用程序特定变量:
app.security - 安全上下文。
app.user - 当前用户对象 app.request - 请求对象。
app.session - 会话 对象。
app.environment - 当前环境(dev,prod, ()app.debug - 如果处于调试模式,则为真。否则为假。
示例:
在树枝上:{{ app.request.method }}
在PHP中:echo $app->getRequest()->getMethod()
在树枝上:{{ app.user.username }}
但对于会话对象:
在树枝上:{{ app.session.varname }}
在PHP中:// I don't know, do you know how to call it?
我试过了:$session = $app->getSession('uid');
但是当我尝试将它存储到数据库时它告诉我:
Catchable Fatal Error:类的对象 Symfony \ Component \ HttpFoundation \ Session无法转换为 C:\ wamp \ www ...
中的字符串
在PHP模板方面缺乏资源,但在我的情况下,由于某些原因我无法切换。
问题换句话说,PHP模板中的等价物是什么:
{{ app.session.varname }}
?
答案 0 :(得分:14)
在树枝上:{{ app.session.varname }}
在PHP中:echo $app->getSession()->get('uid');
答案 1 :(得分:0)
$session = $this->get('session');
if ($session->has('varname')) {
echo $session->varname
}
答案 2 :(得分:0)
您是否尝试过error_log $ app-> getSession()来查看它返回的内容?
error_log(var_dump($app->getSession(), true));