目前我有一组数组。和我可以轻松地将这些数据插入到我的数据库中,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桌子from 数组的值emp_id应该检查它是否已经存在于我的users使用company_id字段 from 中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", ] );
1 回答
LEATH
TA贡献1936条经验 获得超6个赞
你可以使用 LaravelValidator来验证任何数组,就像它是请求输入一样。
use Illuminate\Support\Facades\Validator;
$validator = Validator::make(
$insert_data1,
[
'*.emp_id' => "required|integer|exists:users,company_id",
]
);
编辑:
您可以使用验证器 API 接收错误消息和错误项。
$failed = $validator->fails(); //boolean
$errors = $validator->errors();
$validated = $validator->validated();
$invalid = $validator->invalid();
- 1 回答
- 0 关注
- 112 浏览
添加回答
举报
0/150
提交
取消