在Laravel 5.2中批量插入

时间:2017-01-26 10:20:17

标签: laravel laravel-5.2 batch-insert

我正在使用API​​进行大量的计算,最后有100个数据库字段,最后有一个很大的Foreach循环。

在每次迭代中,我都会在数据库中插入数据。我想在最后插入一次数据(如CodeIgniter中的批量插入)。

任何机构都知道如何在迭代结束时插入所有数据。而不是每次迭代,它都在数据库中插入行。

我想在循环结束时插入数据。任何帮助或想法都赞赏。

1 个答案:

答案 0 :(得分:22)

使用insert()方法进行批量插入。首先,使用以下结构构建一个数组:

$data = [
    ['name' => 'John', 'age' => 25],
    ['name' => 'Maria', 'age' => 31],
    ['name' => 'Julia', 'age' => 55],
];

然后使用Eloquent模型插入数据:

Model::insert($data);

或使用查询构建器:

DB::table('table_name')->insert($data);