如何删除数字中的逗号并插入 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)
在挖掘后我了解到我需要从值中删除逗号,在我的例子中,在 grandtotal 和 cost 他们'都是小数。
从这个问题 中,答案建议了这段代码。
$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]),
我在创建函数时遇到问题,
SQLSTATE[HY000]: General error: 1364 Field 'grandtotal' doesn't have a default value (HY000)
在挖掘后我了解到我需要从值中删除逗号,在我的例子中,在 grandtotal 和 cost 他们'都是小数。
从这个问题
$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]),