Thinkphp6 中上传文件,验证文件大小及后缀名官方文档错误修改

hykeda2年前ThinkPHP2487

官方文档示例:

上传验证

支持使用验证类对上传文件的验证,包括文件大小、文件类型和后缀:

public function upload(){    // 获取表单上传文件    $files = request()->file();    try {        validate(['image'=>'filesize:10240|fileExt:jpg|image:200,200,jpg'])            ->check($files);        $savename = [];        foreach($files as $file) {            $savename[] = \think\facade\Filesystem::putFile( 'topic', $file);        }    } catch (\think\exception\ValidateException $e) {        echo $e->getMessage();    } }

其实直接使用:validate(['image'=>'filesize:10240|fileExt:jpg|image:200,200,jpg'])->check($files); 是错误的。无论你如何修改规则都是正确的。

这里我们需要修改成:check我们需要传入数组形式

validate(['image'=>'filesize:10240|fileExt:jpg|image:200,200,jpg'])->check(['image'=>$files]);

或者我们不使用助手函数:

6ceab4c733618e0fcfca041125096bf.png

相关文章

thinkphp6.1中分页类调用

$list = YourModel->paginate([     'list_rows' =>&n...

composer安装插件包的时候提示PHP 版本不匹配

因为安装的 PHP 是 8.0 ,不匹配 composer.json 要求的版本,所以使用 composer 进行安装时会报错。在安装命令后加上 --ignore-pla...

在thinkphp6.1.1中composer安装 liliuwei/thinkphp-jump报错

报错内容:Problem 1     - Root composer.json requires liliu...

thinkphp6 安装扩展jump后如何配置

thinkphp6 安装扩展jump后如何配置

config中jump.php配置跳转提示页面...

关于thinkphp5.1钩子和行为的个人理解和使用

关于thinkphp5.1钩子和行为的个人理解和使用

thinkphp5中的钩子和行为属于AOP编程思想,类似于AOP编程中的“切面”的概念,简单理解就是一个切入点,可以大大增加程序的耦合性。如何使用钩子和行为来开发:首先在项目中创建一个行为文件夹:1、...

thinkphp5 微信token验证不通过

刚想接入下微信公众平台,用了最新的tp5,之前用的是tp3.2.3,发现配置好文件后,微信后台一直提示token验证失败。 但是直接在入口文件写echo $_GET["echostr"];就会提...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。