public function action_adicionar_item()
{
$lista_item_pedido = array();
$x = 0;
if(Session::has('lista_item_pedido'))
{
foreach(Session::get('lista_item_pedido') as $item)
{
$lista_item_pedido[$x] = $item;
$x++;
}
}
$lista_item_pedido[$x] = Input::all();
Session::put('lista_item_pedido', $lista_item_pedido);
}
我第一次运行此方法时,没有创建会话,因此忽略了 if 并设置了数组值,并且应该使用 name 一个值定义会话,但它没有。
我第二次调用它时,会话被创建但没有值,这很奇怪。
任何想法为什么在我第一次运行时使用空数组创建会话?
Input::all()
正在返回正确的值。
我已经检查了文件storage/sessions/
创建的文件并且值设置正确:
s:17:"lista_item_pedido";a:1:{i:0;a:7:{s:2:"id";s:3:"162";s:10:"referencia";s:12:"112233445566";s:9:"descricao";s:6:"Sapato";s:5:"grade";s:14:"Grade 41 ao 46";s:8:"grade_id";s:1:"4";s:5:"valor";s:5:"50.00";s:10:"fornecedor";s:2:"30";}}}s:13:"last_activity";i:1340395110;}
这是我第一次运行该方法时创建的,所以它被创建但我无法访问它,只有当我添加两个值时,在这种情况下,第一个被忽略。