[英]Symfony2: Session Global variable in PHP template
Symfony doc說:
在每個請求期間,默認情況下,Symfony2將在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.user.username }}
但對於會話對象:
在樹枝上: {{ app.session.varname }}
用PHP: // I don't know, do you know how to call it?
我試過了: $session = $app->getSession('uid');
但當我嘗試將其存儲到數據庫時,它告訴我:
可捕獲的致命錯誤:類Symfony \\ Component \\ HttpFoundation \\ Session的對象無法轉換為C:\\ wamp \\ www中的字符串...
在PHP模板方面缺乏資源,但在我的情況下,由於某些原因我無法切換。
換句話說,這個問題是PHP模板的等價物:
{{ app.session.varname }}
?
在樹枝上: {{ app.session.varname }}
在PHP中: echo $app->getSession()->get('uid');
$session = $this->get('session');
if ($session->has('varname')) {
echo $session->varname
}
你試過error_log $ app-> getSession()來看看它返回的內容嗎?
error_log(var_dump($app->getSession(), true));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.