テーブルから最後のIDを取得できます..挿入後、配列のカウントに最後のIDを追加します..しかし、問題が発生します。これは、2人以上のユーザーがこのテーブルにレコードを挿入した場合です。同時に..トランザクションを使用できるように
try{
DB::beginTransaction();
// 1- get the last id of your table ($lastIdBeforeInsertion)
// 2- insert your data
Model::insert($array);
// 3- Getting the last inserted ids
$insertedIds = [];
for($i=1; $i<=theCountOfTheArray; $i++)
array_push($insertedIds, $lastIdBeforeInsertion+$i);
});
DB::commit();
}catch(\Exception $e){
DB::rollback();
}
または
DB::transaction(function() {
// 1- get the last id of your table ($lastIdBeforeInsertion)
// 2- insert your data
Model::insert($array);
// 3- Getting the last inserted ids
$insertedIds = [];
for($i=1; $i<=theCountOfTheArray; $i++)
array_push($insertedIds, $lastIdBeforeInsertion+$i);
});
編集
一意の列を作成して、例として呼び出すことができますunique_bulk_id
..これは、挿入されたデータに対してランダムに生成された文字列を保持します..挿入後、このunique_bulk_id
によって挿入されたデータを取得できます。 。