我使用Angular2作爲我的前端,laravel作爲我的後端。我試圖解析一個數組並將其全部存儲到不同的行中,但是當前只有最後收到的記錄被保存到數據庫中。只有最後收到的記錄被保存到數據庫
public function SaveOrder(Request $request) {
$input = $request->all();
$order = new Order;
foreach ($input as $arr) {
foreach ($arr as $key => $value) {
if (array_key_exists($key, $arr) && !empty($value)) {
$order->$key = $value;
}
}
}
$order->save();
}
$input = $request->all();
foreach ($input as $arr) {
var_dump($arr);
foreach ($arr as $key => $value) {
if (array_key_exists($key, $arr) && !empty($value)) {
}
}
}
的var_dump陣列的
是的,這是低效的。您的批量插入應該在2個循環的*外*。在循環中,您只應構建插入數據數組,而不執行數據庫查詢。 – lesssugar
@lesssugar如果我把它移到第一個foreach之外,我有和以前一樣的問題,它只保存最後一條記錄 – ghan