簡體   English   中英

Laravel,將數據從數組保存到數據庫

[英]Laravel, save data from array to database

我需要將數據從這個數組保存到MySQL數據庫

0 => {#517 ▼
    +"id": 59
    +"name": "example_name_1"
    +"category": "category_1"
    +"price": 100
    +"description": "example_description_1"
}
1 => {#516 ▼
    +"id": 60
    +"name": "example_name_2"
    +"category": "category_2"
    +"price": 200
    +"description": "example_description_2"
}

我試着像這樣保存,但是像我這樣的錯誤

未定義的索引:名稱

for ($idx = 0; $idx < count($products); $idx++)
{
    $values = new Product();
    $values->name = $products["name"][$idx];
    $values->category= $products["category"][$idx];
    $values->description = $products['description'][$idx];
    $values->price = $products['price'][$idx];
    $values->save();
}

您收到該錯誤,因為您訪問該數組的順序不正確。

訂單應該是產品索引,然后是名稱,類別或任何字段。

for ($idx = 0; $idx < count($products); $idx++)
{
    $values = new Product();
    $values->name = $products[$idx]["name"];
    $values->category= $products[$idx]["category"];
    $values->description = $products[$idx]['description'];
    $values->price = $products[$idx]['price'];
    $values->save();
}

或者你可以輕松地使用foreach作為@VincentDecaux在評論中提到的。

foreach ($products as $product) {
    $values = new Product();
    $values->name = $product["name"];
    $values->category= $product["category"];
    $values->description = $product['description'];
    $values->price = $product['price'];
    $values->save();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM