Laravel Mysql批量插入
/** * 批量插入(如果数据已经存在,删除原数据)注意$dataList中必须包含PRIMARY KEY或一个UNIQUE索引 * @param $dataList * @return bool */ public function replace($dataList) { $keyList = array_keys(reset($dataList)); $keyStr = implode(",", $keyList); $sql = "replace into " . $this->table . "($keyStr)" . " values"; foreach ($dataList as $item) { $sql .= "('" . implode("','", array_values($item)) . "'),"; } $sql = substr($sql, 0, -1); $res = DB::connection($this->connection)->insert($sql); return $res; }
插入汉字会乱码(插入数据库时自动过滤了'\'):解决方法 addslashes()处理下数据