验证数组是否已存在于 mysql php laravel

目前我有一组数组。



我可以轻松地将这些数据插入到我的数据库中,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);

输出:

http://img1.mukewang.com/62d292b90001896604640870.jpg

我正在使用此代码将这些数据插入到我的表中

    DB::table('tbl_emp_proj')->insert($insert_data1);

这很好用,但问题是,

我正在尝试验证我的表中是否emp_id存在users

这是我的users桌子

http://img.mukewang.com/62d292c300013d9a05740386.jpg

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",

        ]

    );


沧海一幻觉
浏览 113回答 1
1回答

LEATH

你可以使用 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();
打开App,查看更多内容
随时随地看视频慕课网APP