Поскольку вы пытаетесь обновить одну и ту же таблицу с разными критериями с разными значениями, это невозможно.
Также вы пытаетесь обновить многие элементы, и вы должны использовать транзакции.
Я могу предложить вам использовать этот код
$updatedColumns = ['system_off', 'listing', 'jump_menu', 'cache_lifespan', 'idle_time'];
DB::beginTransaction();
foreach ($updatedColumns as $column) {
if (!Setting::where('name', $column)->update(['value' => $fields[$column]])) {
DB::rollBack();
}
}
DB::commit();
если вы не используете транзакции, вы можете использовать этот код
$updatedColumns = ['system_off', 'listing', 'jump_menu', 'cache_lifespan', 'idle_time'];
foreach ($updatedColumns as $column) {
Setting::where('name', $column)->update(['value' => $fields[$column]]);
}