// +---------------------------------------------------------------------- namespace app\controller; use think\facade\Session; use think\facade\Filesystem; class Upload extends Base { public $data = ['data' => [], 'code' => 0, 'msg' => '']; protected function initialize() { } public function upload(){ $upload_type = $this->request->get('filename', 'images', 'trim'); $config = $this->$upload_type(); // 获取表单上传文件 例如上传了001.jpg $file = request()->file('file'); try { validate(['file'=>'filesize:10240|fileExt:jpg|image:200,200,jpg']) ->check([$file]); $data['status'] = 1; $data['info'] = $this->save($file, $upload_type); } catch (think\exception\ValidateException $e) { $data['status'] = 0; $data['info'] = $e->getMessage(); } return json($data); } protected function images(){ return []; } public function editor(){ $fileType = $this->request->get('fileType', 'image', 'trim'); $file = request()->file('imgFile'); $data['data']['url'] = '/uploads/' . Filesystem::disk('public')->putFile($fileType, $file, 'md5'); $data['code'] = "000"; return json($data); } public function filemanage(){ return []; } public function ueditor(){ $data = new \com\Ueditor(Session::get('userInfo.uid')); echo $data->output(); } public function delete(){ $id = $this->request->param('id', 0); if(!$id){ $data = [ 'status' => false ]; }else{ $data = [ 'status' => true ]; } return json($data); } protected function save($file, $upload_type){ $data = []; $savename = Filesystem::disk('public')->putFile($upload_type, $file, 'md5'); $data['create_time'] = $file->getATime(); //最后访问时间 $data['savename'] = $file->getBasename(); //获取无路径的basename $data['c_time'] = $file->getCTime(); //获取inode修改时间 $data['ext'] = $file->getExtension(); //文件扩展名 $data['name'] = $file->getFilename(); //获取文件名 $data['m_time'] = $file->getMTime(); //获取最后修改时间 $data['owner'] = $file->getOwner(); //文件拥有者 $data['savepath'] = $file->getPath(); //不带文件名的文件路径 $data['url'] = $data['path'] = '/uploads/' . $savename; //全路径 $data['size'] = $file->getSize(); //文件大小,单位字节 $data['is_file'] = $file->isFile(); //是否是文件 $data['is_execut'] = $file->isExecutable(); //是否可执行 $data['is_readable'] = $file->isReadable(); //是否可读 $data['is_writable'] = $file->isWritable(); //是否可写 $data['md5'] = md5_file($file->getPathname()); $data['sha1'] = sha1_file($file->getPathname()); return $data; } }