簡體   English   中英

Symfony2:PHP模板中的Session Global變量

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM