在会话中保存请求

时间:2014-12-12 01:30:17

标签: php symfony session-variables

我在控制器中有以下代码:

$request = $this->getRequest();
$session = $request->getSession();

我将一些数据发布到该控制器(来自表单)。我想将发布的数据保存在会话变量中。这可能吗?

也许序列化请求对象?如果这是正确的方法,我将如何序列化它?

1 个答案:

答案 0 :(得分:3)

类似于如何使用$session->all()将所有会话值转换为数组,您可以使用request获取所有$request->request->all()值,因此您的最终产品将是:

$session->set('postData', $request->request->all());

要获取数据:

$postDataFromBefore = $session->get('postData');

您访问$postDataFromBefore的值就像访问任何传统的$_POST数组一样,因为Symfony会以相同的数据类型保存会话数据。因此$_POST['my_value']会转换为$postDataFromBefore['my_value']