Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 31.05.2018 21:50:07

Нужна ваша помощь!

Всем привет
Я начинающий программист Laravel, недавно столкнулся с проблемой одной
Мне нужно принимать $request от формы и записывать их в сессию
Сложность в том что, если я один раз записал, в следующий раз оно должно объединится с предыдущей сессией.Напишу код для подробностей…
у меня получилось запихать в сессию массив но после второго раза, оно не добавляется а просто заменяет последний массив

public function addItem(Request $request)
{
$Item =$request->all();//Принимаем все поля

if (Session::has(’Items’))
{
//если есть все поля
$temp = Session::get(’Items’);

$result = array($temp,$Item);

Session::put(’Items’, $result);
dd(Session::get(’Items’));//проверка
}
Session::put(’Items’, $Item);

return view(’createZalog’,compact(’klient’));
}

Результат дампа:
array:2 [▼
0 ⇒ array:7 [▼
«_token» ⇒ «Hlyvh9jLRgPMM5g2pAVLs6hA7uBwCIRx8MImkVVf»
«podcategory» ⇒ «2»
«name» ⇒ «2»
«serial_number» ⇒ «2»
«price» ⇒ «2»
«description» ⇒ «2»
«comments» ⇒ «2»
]
1 ⇒ array:7 [▼
«_token» ⇒ «Hlyvh9jLRgPMM5g2pAVLs6hA7uBwCIRx8MImkVVf»
«podcategory» ⇒ «a»
«name» ⇒ «jbhnm»
«serial_number» ⇒ «gvhbjnmk»
«price» ⇒ «fgvbhjn»
«description» ⇒ ""
«comments» ⇒ ""
]
]

Не в сети

#2 14.06.2018 23:26:48

Re: Нужна ваша помощь!

if(Session::has('key')){
    $tmp = Session::get('key');
    if(is_array($tmp[0]))){ // Проверяем, что в сессии массив массивов
        array_push($tmp,$request->all());
    }
}else{
        $tmp = [$request->all()];
    }
Session::put('key',$tmp);

Попробуй так.

Не в сети

Подвал раздела