如何删除数字中的逗号并插入 table in laravel

how to remove comma in numbers and insert to table in laravel

我在创建函数时遇到问题,

SQLSTATE[HY000]: General error: 1364 Field 'grandtotal' doesn't have a default value (HY000)

在挖掘后我了解到我需要从值中删除逗号,在我的例子中,在 grandtotalcost 他们'都是小数。

从这个问题 中,答案建议了这段代码。

$input = '10,000.1111';
$model->column = (float) str_replace(',', '', $input);
$model->save()

我的问题是如何将其应用于当前代码?

这是我的商店功能

$orders = Orders::create($request->only(
        'user_id',
        'status_id',
        'currency_id',
        'company_id',
        'purchase_no',
        'notes',
        'delivery_date',
        'grandtotal', '=>' , (float) str_replace(',', '', 'grandtotal'),
        'publish'
    ));

    $input = $request->all();

    for($i=0; $i<= count($input['quantity']); $i++) {

      if(empty($input['quantity'][$i]) || !is_numeric($input['quantity'][$i])) continue;

      $items = [ 
        'product_id' => $input['product_id'][$i],
        'product_code' => $input['product_code'][$i],
        'name' => $input['name'],
        // 'cost' => $input['cost'][$i],
        'cost' => (float) str_replace(',', '', $input['cost'][$i]),
        'quantity' => intval($input['quantity'][$i]),
      ];

      Order::create($items);
    }

    return redirect(route('orders.index'));

在此先感谢您!

您只需将标记的行替换为以下行

'cost' => (float) str_replace(',', '', $input['cost'][$i]),