校验zip文件内的excel数据和文件
- ^php 7.4
- ^laravel 6
composer require russellxrs/zip-importer
$zipImporter = new \Russellxrs\ZipImporter\ZipImporter($zipPath);
$zipImporter->setRules($rules)
->setUserFunc([
'id' => function($id){
return $id + 1;
}
])
->validate($validatorFacade);
$data = $zipImporter->validatedData();
$file = $zipImporter->validatedFiles();
$errors = $zipImporter->errors();
$rules = [
'id|编号' => 'required',
'id_num|身份证' => 'required|checkFile<images:txt|2Mb>'
];
-
键名 :
- 格式:字段名|字段中文名
-
键值 :
- 和laravel的验证规则格式一致
- checkFile规则是检查文件的验证规则, 格式为: checkFile<文件夹名称:文件类型|文件大小>
- checkFile规则的文件大小可以直接用kb,mb表示,如果是纯数字,则单位为byte。
用途: 用于修改excel文件内读取的数据 **参数:**一个回调函数数组 示例:
$zipImporter->setUserFunc([
'id' => function($id){
return $id + 1;
}
])
用于设置校验规则
校验
合法数据
合法文件
关联数组
校验错误