У меня есть многомерный массив, содержащий данные из формы, и мне нужен этот массив в другом контроллере того же контроллера, чтобы продолжить работу с ним, но я не знаю, как мне это сделать.
Массив может выглядеть следующим образом:
array [
"absender" => "Maxim Ivan",
"email" => "maximivan@example.com",
"telefon" => "1234567890",
"fax" => null,
"grund" => "Gehaltserhöhung",
"termin" => [
0 => [
"person" => "Some Name",
"meeting" => "10.05"
],
1 => [
"person" => "Another Name",
"meeting" => "18.05"
],
2 => [
"person" => "Again another name",
"next-possible-meeting" => "1"
],
3 => [
"person" => "And again",
"next-possible-meeting" => "1"
],
],
"bemerkung" => "some notes by Maxim"
]
Этот массив создается (и проверяются входные данные) в store
-методе TerminController.
Этот метод возвращает представление, в котором все эти данные отображаются снова, чтобы пользователь мог проверить информацию и затем мог добавить документ.
Когда документ добавляется и данные отправляются с помощью кнопки ввода, вызывается upload
-метод в том же контроллере.
И вот где мне нужен массив с данными формы, чтобы продолжать работать с ним.
Но как мне добиться передачи массива до следующей функции, которая вызывается только с помощью кнопки ввода.
Первый подход состоял в том, чтобы сохранить массив в сеансе, который даже работал, хотя это было трудно из-за многомерности; но это действительно ужасное решение.
Должен ли я сохранить входные данные в базе данных в методе store
и извлечь их снова в методе upload
?
Или можно как-то передать массив через контроллеры / сделать его доступным в upload
-Контроллере, даже если он создается в другом?
Я также что-то слышал об использовании serialize()
и unserialize()
, но я не совсем уверен, как это могло бы помочь мне ..
Или, может быть, есть другое и даже лучшее решение, о котором я просто не думаю?
Я был бы признателен за любую помощь, которую я могу получить.
Массив меняется, он может быть 17 массивами, вложенными в 'termin', но я также могу быть только одним.