美文网首页
TP6 文件上传 2023-01-12

TP6 文件上传 2023-01-12

作者: 阿然学编程 | 来源:发表于2023-01-11 20:53 被阅读0次
        /**
         * 上传文件
         * @return string
         */
        public function uploads()
        {
            $files = request()->file('file');
            if (!$files) {
                return '无上传文件';
            }
            $date = date('Ymd');
            //规定上传文件的大小
            $size = 1024 * 1024 * 2;
            //规定上传文件的类型
            $fileExt = ['xlsx', 'xls'];
    
            if (!is_array($files)) {
                //单文件上传
                //echo '单文件';
                //获取文件后缀
                $getExt = $files->getOriginalExtension();
                //获取文件名
                $name = $files->getOriginalName();
                //验证文件
                if ($size < $files->getSize()) {
                    return '上传文件过大';
                }
                if (!in_array($getExt, $fileExt)) {
                    return '上传文件类型错误';
                }
                //上传文件到服务器并保存原文件名:ymd/xxxxx.xlsx
                $savename = \think\facade\Filesystem::disk('public')->putFileAs($date, $files, $name);
                if (!$savename) {
                    return '上传失败';
                }
                dump($savename);
            } else {
                //多文件上传
                //echo '多文件';
                $savename = [];
                $count = count($files);
                if ($count > 10) {
                    return '一次性最多只能上传10个文件';
                }
                foreach ($files as $file) {
                    //获取文件名
                    $name = $file->getOriginalName();
                    //获取扩展名
                    $getExt = $file->getOriginalExtension();
                    //验证文件
                    if ($size < $file->getSize()) {
                        return '上传文件过大';
                    }
                    if (!in_array($getExt, $fileExt)) {
                        return '上传文件类型错误';
                    }
                    $savename[] = \think\facade\Filesystem::disk('public')->putFileAs($date, $file, $name);
                    unset($file);
                }
                unset($files);
                if (empty($savename)) {
                    return '上传失败';
                }
                dump($savename);
            }
        }
    

    相关文章

      网友评论

          本文标题:TP6 文件上传 2023-01-12

          本文链接:https://www.haomeiwen.com/subject/tdkicdtx.html