中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Laravel框架怎么實現一個批量更新數據功能

發布時間:2021-04-13 17:05:49 來源:億速云 閱讀:345 作者:Leah 欄目:開發技術

這篇文章給大家介紹使用Laravel框架怎么實現一個批量更新數據功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

//from https://github.com/mavinoo/laravelBatch
static function batchUpdate($model, array $values, $index = null){
  $final = [];
  $ids = [];
  if (!count($values)) {
    return false;
  }
  if (!isset($index) || empty($index)) {
    $index = $model->getKeyName();
  }
  foreach ($values as $key => $val) {
    $ids[] = $val[$index];
    foreach (array_keys($val) as $field) {
      if ($field !== $index) {
        $value = (is_null($val[$field]) ? 'NULL' : '"' . self::mysql_escape($val[$field]) . '"');
        $final[$field][] = 'WHEN `' . $index . '` = "' . $val[$index] . '" THEN ' . $value . ' ';
      }
    }
  }
  $cases = '';
  foreach ($final as $k => $v) {
    $cases .= '`' . $k . '` = (CASE ' . implode("\n", $v) . "\n"
      . 'ELSE `' . $k . '` END), ';
  }
  $full_table     =  $model->getConnection()->getTablePrefix() . $model->getTable();
  $query = "UPDATE `" .$full_table . "` SET " . substr($cases, 0, -2) . " WHERE `$index` IN(" . '"' . implode('","', $ids) . '"' . ");";
  \DB::update($query);
  #return $this->db->connection($this->getConnectionName($table))->update($query);
}

測試代碼如下

$userInstance = new User();
$value = [
  [
    'id' => 2,
    'contest_name' => 'A1',
    'project_name' => 'P1'
  ] ,
  [
    'id' => 3,
    'contest_name' => 'A2',
    'project_name' => 'P2'
  ] ,
];
$index = 'id';
Utils::batchUpdate($userInstance, $value, $index);

關于使用Laravel框架怎么實現一個批量更新數據功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

咸丰县| 英德市| 兴海县| 油尖旺区| 右玉县| 贵港市| 满洲里市| 中阳县| 沙坪坝区| 阿鲁科尔沁旗| 罗源县| 双桥区| 离岛区| 白玉县| 南江县| 迭部县| 阿拉善右旗| 揭东县| 拜城县| 固原市| 含山县| 沅江市| 洞口县| 平舆县| 伊金霍洛旗| 虞城县| 清流县| 松原市| 图木舒克市| 彩票| 合作市| 南雄市| 怀远县| 三都| 福安市| 伊吾县| 万年县| 古丈县| 浮山县| 黄山市| 武汉市|