Как их за раз сохранить?) получил 150 и в цикле по одной записываю в DB
foreach ($Requests as $itemRequests) {
$request = $this->arrayToObject($itemRequests->Items);
$responsibleUserId = DB::table('responsible_user')
->where('id_elma', '=', $request->ResponsibleUser->Id)->get();
// если запись сущетсвует, проверяем значение
if ($responsibleUserId->all() != null) {
$referenceName = DB::table('responsible_user')
->where([
['id_elma', '=', $request->ResponsibleUser->Id],
['name', '=', $request->ResponsibleUser->Name],
])
->get();
// если значение не совпадают, то перезаписываем значение
if ($referenceName->all() == null) {
DB::table('responsible_user')
->where('id_elma', $request->ResponsibleUser->Id)
->update(['name' => $request->ResponsibleUser->Name]);
}
} else { // если записи нет, то вносим новую запись
DB::table('responsible_user')->insert(
['id_elma' => $request->ResponsibleUser->Id,
'name' => $request->ResponsibleUser->Name]
)->disableQueryLog();
}
}
ну примерно так)
Цикл оставляешь. Но в цикле подготавливаешь массив.
После цикла вызываешь 1 метод. Плюс можно и другие запросы соптимизировать