Tja, du kan få det sista ID:t från tabellen .. Sedan efter infogningen lägg till det sista ID:t till räkningen av din array .. Men du kommer att möta ett problem och det är om du har 2 eller fler användare infogat några poster i den här tabellen samtidigt .. så att du kan använda Transaktionen
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();
}
eller
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);
});
Databastransaktionsdokumentation
Mycket användbar artikel om databastransaktioner
Redigera
Du kan skapa en unik kolumn och kalla den till exempel unique_bulk_id
.. Detta kommer att hålla slumpmässigt genererad sträng för infogade data .. efter infogningen kan du hämta infogade data genom detta unique_bulk_id
.