php - Laravel 从表单传递数组并在控制器中解析
问题描述
我有一系列输入,如下所示:
<input type='hidden' name='sheepNames[]' value='bab' />
<input type='hidden' name='sheepNames[]' value='harry' />
<input type='hidden' name='sheepTitles[]' value='leader' />
<input type='hidden' name='sheepTitles[]' value='sheep' />
在我的控制器中,我需要遍历数组并将它们保存在带有列的数据库name
中title
bab | leader <br>
harry | sheep
$array = $request->get('sheepNames');
foreach($array as $i => $item)
{
$tb_name->name= $array[$i];
$tb_name->title= $request->get('sheepTitles')[$i];
}
尝试了多种访问数组的方法,但似乎无法弄清楚。
解决方案
使用几个数组可能更容易做到这一点。
$names = $request->get('sheepNames');
$titles = $request->get('sheepTitles');
$max = count($names);
for ($x = 0; $x <= $max; $x ++){
$tb_name[$x]['name']= $names[$x];
$tb_name[$x]['title'] = $titles[$x];
}
我不知道 $tb_name 是什么,但按照你上面的方式,它会不断被覆盖,所以我把它做成了一个数组来说明这一点。
另外 - 您需要对标题计数进行一些错误检查以确保它们 == 名称,否则您可能会在标题数组上有一个损坏的索引。
推荐阅读
- automated-tests - 如何指定 Appium 路径?
- amazon-web-services - AWS Cloudformation 将 Amplify 绑定到 bitbucket 存储库
- r - 删除 R 中的空文件:if (!file.size(x) == 0) { 中的错误:需要 TRUE/FALSE 的缺失值
- html - 怎么做
材料 ui 抽屉演示中的 100% 高度 - android - LazyColumn 项目位置
- batch-file - 批处理文件在 Windows 10 中无法正确运行
- javascript - 浏览器卡住上传大文件
- x86-64 - 是否可以在具有 64 位处理器的 32 位操作系统上运行 64 位代码?
- google-app-engine - Google App Engine:应用引擎仪表板与计费导出之间的不可预测的成本和差异
- javascript - 为什么我没有必要的 jQuery DataTables 分页按钮?