首页 > 解决方案 > 如何处理带有 laravel 请求的数组?

问题描述

我正在使用这样的简单表单和数组输入(不是动态的)

<input type="text" name="pre_ref_position[]" id="pre_ref_position">
<input type="text" name="pre_ref_position[]" id="pre_ref_position">

用ajax形式发布并返回这样的数据;

[
    0:{pre_ref_position:'example1'}
    1:{pre_ref_position:'example2'}
]

所以我想用 eloquent 保存这些数据,但是如何处理这个数组并将每一行保存在数据库中?

标签: phplaravellaravel-5eloquent

解决方案


$refVal假设您在控制器中调用的变量中收到数组

然后使用以下代码:

$refArr = [];
foreach($refVal as $key => $val)
{
  $now = Carbon::now();
  //ref_pos in the array below refers to the field name in your database.
  $refArr[] = [ 'ref_pos' => $val['pre_ref_position'] ,'created_at' => $now, 'updated_at' => $now ];
}


//assuming model name is `Position`
Position::insert($refArr);

推荐阅读