【发布时间】:2019-05-22 10:10:41
【问题描述】:
我有一个包含来自表单的数据的多维数组,我需要在同一控制器中的另一个控制器中使用此数组才能继续使用它,但我不知道我是如何做到的。
数组可能看起来像这个例子:
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"
]
这个数组是在“TerminController”的store-方法中创建的(并验证了输入数据)。
此方法将返回一个视图,在该视图中再次显示所有这些数据,以让用户检查信息,然后可以添加文档。
当添加文档并使用输入按钮提交数据时,将调用同一控制器中的upload-方法。
我需要带有表单数据的数组才能继续使用它。
但是我如何实现将数组传递给仅通过输入按钮调用的下一个函数。
第一种方法是将数组保存到会话中,尽管由于多维而很难,但它确实有效;但这是一个非常丑陋的解决方案。
我应该将输入数据保存到store-方法中的数据库中并在upload-方法中再次获取吗?
或者是否有可能通过控制器传递数组/使其在upload-Controller 中可访问,即使它是在另一个控制器中创建的?
我也听说过使用serialize()和unserialize(),但我不确定这对我有什么帮助..
或者也许还有其他更好的解决方案我只是没想到? 我会很感激我能得到的所有帮助。
数组各不相同,可以是嵌套在 'termin' 中的 17 个数组,但我也可以是一个。
【问题讨论】:
-
我仍然认为 session 是要走的路。您正在处理的数据不必保留很长时间。否则,将其保存在数据库中。
标签: php arrays laravel function