将数组放入会话 symfony2

Put arrays in session symfony2

我有以下代码:

 public function addAction(Request $request){
    $aBasket[] = $request->request->all();
    $this->get('session')->set('aBasket', $aBasket);
    return $this->redirect($this->generateUrl('shop_desktop_homepage'));
    print_r($aBasket);
}

工作正常,但仅在会话中保存最后保存的数组。如何进行会话。比如数组是这样保存的,只有最后一个:

array:1 [▼
    0 => array:3 [▶]
]

但是我想保存:

array:1 [▼
  0 => array:3 [▶]
  1 => array:3 [▶]
  2 => array:3 [▶]
]

不仅是最后一个。

我没有测试代码。但它会有所帮助。

public function addAction(Request $request){

  $aBasket = $request->request->all();
  // Get Value from session
  $sessionVal = $this->get('session')->get('aBasket');
  // Append value to retrieved array.
  $sessionVal[] = $aBasket;
  // Set value back to session
  $this->get('session')->set('aBasket', $sessionVal);
  return $this->redirect($this->generateUrl('shop_desktop_homepage'));

}

我写了评论。我没有通过会话获取方法检查值 return。您需要从会话获取中检查值 return 的类型。

希望对您有所帮助。