public static function updateValues(array $values) { $table = MyModel::getModel()->getTable(); $cases = []; $ids = []; $params = []; foreach ($values as $id => $value) { $id = (int) $id; $cases[] = "WHEN {$id} then ?"; $params[] = $value; $ids[] = $id; } $ids = implode(',', $ids); $cases = implode(' ', $cases); $params[] = Carbon::now(); return \DB::update("UPDATE `{$table}` SET `value` = CASE `id` {$cases} END, `updated_at` = ? WHERE `id` in ({$ids})", $params); }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter