【发布时间】:2020-01-09 05:38:36
【问题描述】:
目前我有一组数组。
和
我可以使用 Laravel 轻松地将这些数据插入到我的数据库中,而无需进行任何验证
这是示例数组
代码:
$excel1 = Importer::make('Excel');
$excel1->hasHeader(true);
$excel1->load($savePath.$fileName);
$excel1->setSheet(2);
$collection1 = $excel1->getCollection();
$arr1 = json_decode($collection1,true);
foreach ($arr1 as $row1) {
$insert_data1[] = array(
'projCode' => $projCode,
'emp_id' => $row1['company_id'],
'type' => 'EMP',
'deleted' => 0,
'by_id' => auth()->user()->id,
'updated_by' => auth()->user()->name,
'created_at' => now(),
'updated_at' => now(),
);
}
dd($insert_data1);
输出:
我正在使用此代码将这些数据插入到我的表中
DB::table('tbl_emp_proj')->insert($insert_data1);
这很好用,但问题是,
我正在尝试验证emp_id 是否存在于我的users 表中
这是我的users 表
数组中emp_id 的值应使用users 中的company_id 字段检查它是否已存在于我的users 中。如果$insert_data1 是一个数组并且应该检查它是否存在于数据库中,我该如何验证它?
更新
目前我有这个验证器,我尝试将$Insert_data1 相加,但给了我undefined var for $insert_data1。
$validator = Validator::make(
[
'file' => $request->file,
'extension' => strtolower($request->file->getClientOriginalExtension()),
],
[
'file' => 'required|max:5000',
'extension' => 'required|in:,csv,xlsx,xls',
],
$insert_data1,
[
'*.emp_id' => "required|exists:users,company_id",
]
);
【问题讨论】:
-
你是如何获得
foreach循环的这些数据的? -
我更新了我的问题。我正在使用
cyber-duck/excel/import库。 foreach 数据来自一个 excel 文件的数据。
标签: php mysql laravel cyberduck