【发布时间】:2019-12-30 17:58:19
【问题描述】:
我正在尝试使用updateOrInsert() 方法进行批量插入和更新。但我得到数组到字符串对话错误(通过catch)。任何想法请告诉。谢谢。
$arr = [];
for ($i=0; $i < count($request->data); $i++) {
$arr[] = [
'month' => $request->End_month,
'year' => $request->start_Year,
'data' => str_replace(',' ,'', $request->data[$i]),
'cats' => $request->cat[$i],
'created_by'=> $this->createdBy()
];
} //end for
try {
DB::table('total_ports')->updateOrInsert(
['year' => $request->start_Year], $arr
);
return redirect()->back()->with('successmsg', 'Lorem ipsum');
} catch (Exception $e){
return $e->getMessage();
}
【问题讨论】:
-
哪部分代码抛出数组到字符串的转换错误?
-
updateOrInsert 方法中的第一个数组。
-
如果我只使用插入方法,那么它就像 DB::table('total_ports')->insert($arr);
标签: php mysql laravel-5.8