Laravel Array在多个记录上进行字符串转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel Array在多个记录上进行字符串转换相关的知识,希望对你有一定的参考价值。
我正试图一次性提供多个记录..
当我尝试存储多个记录时,它会给出数组到字符串转换的错误。
这是我从axios得到的回应。
array:2 [
0 => array:3 [
"property_type_id" => 2
"fee_value" => "123"
"product_service_id" => 1
]
1 => array:3 [
"property_type_id" => 1
"fee_value" => "3333"
"product_service_id" => 1
]
]
$feeByPropertyType = $request->feeByPropertyType;
foreach ($feeByPropertyType as $row)
{
$data[] = [
'property_type_id' => $row['property_type_id'],
'fee_value' => $row['fee_value'],
'product_service_id' => 1
];
}
PaymentTypeProductService::insert($data);
我也尝试过其他几种方法,但到目前为止还没有一种方法可以使用。
如何纠正这一点,将非常感谢社区的任何帮助。
答案
你需要格式化你的$data
就像这样。
[
[
'property_type_id' => 2,
'fee_amount' => "123"
],
[
'property_type_id' => 1,
'fee_amount' => "1312"
],
]
另一答案
在这种情况下,如果$request->feeByPropertyType
数据结构的数据结构与数据库表结构匹配,那么您可以简单地使用DB
facade一次插入多行。
DB::insert($request->feeByPropertyType);
以上是关于Laravel Array在多个记录上进行字符串转换的主要内容,如果未能解决你的问题,请参考以下文章
关于在MAC上进行 LARAVEL 环境 Homestead 安装过程记录
Laravel Eloquent 在 whereHas() 上进行选择
Laravel - 无法使用用户名在 SMTP 服务器上进行身份验证
无法在 Laravel 6 中的 SMTP 服务器上进行身份验证