检索会话数据时出现Symfony 3.4错误

时间:2018-12-20 09:34:29

标签: php session symfony-3.4

我可以在同一个控制器内设置和获取会话数据,如下所示:

$this->session->set('userid', $dbres [0]['user_id']);
$user_id = $this->get('session')->get('userid');

这很好。

但是如果我使用

$user_id = $this->get('session')->get('userid');

我在这里犯了什么错误?

在另一个控制器中,抛出此错误:           在null上调用成员函数get()

修改

Please help me, I have the following classes 
class AssociationController extends FOSRestController {
            public $session;
            public function __construct(){
                /*** Set Session ***/
                $this->session = new Session();
            }

            /**
             * @Rest\Post("/session/get")
             */
            public function postTestSetSessionAction(Request $request) {
                    $this->session->set('userid', $dbres [0]['user_id']);
                    $Obj = new ComplaintsController();
                    $Obj->getSessionData();
            }

    }

class ComplaintsController extends FOSRestController {
            public function getSessionData() {
                $user_id = $this->get('session')->get('userid');
            }
    }

当我调用http://localhost/app_dev.php/session/get时,出现错误“在null上调用成员函数get()”

1 个答案:

答案 0 :(得分:0)

您的控制器可以扩展哪个控制器?

尝试从容器中获取会话:

$this->container->get('session')->get('userid');