完成上传组件的开发
This commit is contained in:
@@ -51,6 +51,7 @@ class Upload extends Base {
|
||||
|
||||
public function server(){
|
||||
$param = $this->request->get();
|
||||
$map = [];
|
||||
if (!isset($param['name'])) {
|
||||
return $this->error('非法操作');
|
||||
}
|
||||
@@ -60,10 +61,11 @@ class Upload extends Base {
|
||||
'query' => $this->request->param()
|
||||
];
|
||||
if($param['type'] == 'file'){
|
||||
$list = Db::name('File')->paginate($pageConfig);
|
||||
$map[] = ['ext', '<>', 'image'];
|
||||
}else{
|
||||
$list = Db::name('Picture')->paginate($pageConfig);
|
||||
$map[] = ['ext', '=', 'image'];
|
||||
}
|
||||
$list = Db::name('Attach')->paginate($pageConfig);
|
||||
|
||||
$this->data = [
|
||||
'from' => $this->request->param('from'),
|
||||
@@ -79,15 +81,16 @@ class Upload extends Base {
|
||||
}
|
||||
|
||||
public function upload(){
|
||||
$upload_type = $this->request->get('filename', 'image', 'trim');
|
||||
$type = $this->request->param('type');
|
||||
$upload_type = (false !== strpos("image", $type)) ? "image" : 'file';
|
||||
$config = $this->$upload_type();
|
||||
// 获取表单上传文件 例如上传了001.jpg
|
||||
$file = request()->file('file');
|
||||
$file = $this->request->file('file');
|
||||
try {
|
||||
validate(['file'=>'filesize:10240|fileExt:jpg|image:200,200,jpg'])
|
||||
->check([$file]);
|
||||
$data['code'] = 1;
|
||||
$data['info'] = $this->save($file, $upload_type);
|
||||
$data['info'] = $this->save($this->request, $upload_type);
|
||||
} catch (think\exception\ValidateException $e) {
|
||||
$data['code'] = 0;
|
||||
$data['info'] = $e->getMessage();
|
||||
@@ -99,6 +102,10 @@ class Upload extends Base {
|
||||
return [];
|
||||
}
|
||||
|
||||
protected function file(){
|
||||
return [];
|
||||
}
|
||||
|
||||
public function editor(){
|
||||
$fileType = $this->request->get('fileType', 'image', 'trim');
|
||||
$file = request()->file('imgFile');
|
||||
@@ -130,27 +137,20 @@ class Upload extends Base {
|
||||
return json($data);
|
||||
}
|
||||
|
||||
protected function save($file, $upload_type){
|
||||
protected function save($request, $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; //全路径
|
||||
$file= $request->file('file');
|
||||
$data['savename'] = $request->param('name');
|
||||
$data['mime'] = $request->param('type');
|
||||
$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());
|
||||
$data['id'] = time();
|
||||
$data['ext'] = pathinfo($data['savename'], PATHINFO_EXTENSION); //文件扩展名
|
||||
$data['savepath'] = Filesystem::disk('public')->putFile($upload_type, $file, 'md5');
|
||||
$data['location'] = "/uploads/";
|
||||
$data['url'] = $data['location'] . $data['savepath'];
|
||||
$data['create_time'] = time();
|
||||
$data['id'] = Db::name('Attach')->insertGetId($data);
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user