搜尋

首頁  >  問答  >  主體

我在插件裡面ueditor取得不到symfony2中session的值

symfony2動作裡面 $session = $this->getRequest()->getSession(); $session->set('companyId', 1);

ueditor php文件 會話start(); echo $SESSION['companyId'];

阿神阿神2820 天前500

全部回覆(2)我來回復

  • PHPz

    PHPz2017-05-16 16:46:49

    sf2封裝了session,你不需要調session_start:

    // 页面一:
    $session = $this->getRequest()->getSession();
    $session->set('key', 1);
    
    // 页面二:
    $session = $this->getRequest()->getSession();
    echo $session->get('key');
    

    更新:

    如果你要單獨用,確認你的session key在cookie裡是有效的,你就自己調$session->start(),取變數用$session->get('xxx'),不要用php裡的原生方法了,Session類別把這些都封裝過了。

    回覆
    0
  • PHP中文网

    PHP中文网2017-05-16 16:46:49

    在 Symfony 裡,Session 是存在 Request 物件裡的,在控制器中這麼寫:

    public funciton demoAction(Request $request)
    {
        // 不需要 $session->start()
        $session = $request->getSession();
        $session->set('test', 'test value');
        
        var_dump($session->get('test'));
    }

    但是,Symfony 中的組件是可以單獨被使用的,正如題主所說的場景,在 ueditor 的編輯器中單獨使用:

    use Symfony\Component\HttpFoundation\Session\Session;
    
    $session = new Session();
    // 需要 $session->start();
    $session->start();
    $session->set('test', 'test value');
    
    var_dump($session->get('test'));

    單獨使用 Symfony 元件需要使用 autoload。

    回覆
    0
  • 取消回覆