<?php
/**
 *
 * User: anyluck
 * Date: 2020/4/17
 * Time: 9:56
 */

namespace app\common\controller;


use app\BaseController;
use think\facade\Request;
use lemo\helper\DataHelper;
class Upfile
{

    //上传验证规则
    protected  $uploadValidate = [
        'image' => 'filesize:102400|fileExt:jpg,png,gif,jpeg,rar,zip,avi,mp4,rmvb,3gp,flv,mp3,txt,doc,xls,ppt,pdf,xls,docx,xlsx,doc'
    ];

    // TODO 文件类处理

    /**
     * 文件上传
     * @return false|string
     */
    public  function Uploadss()
    {
        $fileKey = array_keys(request()->file());
        $error="";
        for ($i = 0; $i < count($fileKey); $i++) {
            //获取表单上传文件
            $file = request()->file($fileKey[$i]);
            try {
                validate($this->uploadValidate)->check(DataHelper::objToArray($file));
                $savename = \think\facade\Filesystem::disk('public')->putFile('uploads', $file);
                $savename= str_replace('\\', "/",  $savename);
                $path[] = '/storage/' . $savename;
            } catch (\think\exception\ValidateException $e) {
                $path = '';
                $error = $e->getMessage();
            }
        }
        if (!empty($path)) {
            $result['code'] = 1;
            $result["url"] = $path[0];
            $result['msg'] = lang('upload success');
            json_result(1,"",$result);
        } else {
            //上传失败获取错误信息
            $result['url'] = '';
            $result['msg'] = $error;
            $result['code'] = 0;
//            return $result;
            json_result(1,"",$result);
        }
    }

}