/** * 文件上传 */ public function upload(Request $request){ $file = $request->file('photo'); # 修改的时候 使用的是直接上传的方式 拿的是文件的动态名称 所以这里就不验证了 if(!$file->isValid()){ return ['ServerNo'=>400,'ResultData'=>'无效的上传文件']; exit; } # 方法1 // 使用我们新建的uploads本地存储空间(目录) //这里的uploads是配置文件的名称 在 config下的filesystems.php 下面配置的指定上传目录 // $originalName = $file->getClientOriginalName(); # 文件原名 // $ext = $file->getClientOriginalExtension(); # 扩展名 // $realPath = $file->getRealPath(); # 临时文件的绝对路径 // $type = $file->getClientMimeType(); # image/jpeg 图片类型 // $filename = date('Y-m-d-H-i-s') . '-' . uniqid() . '.' . $ext;
// $bool = Storage::disk('uploads')->put($filename, file_get_contents($realPath)); // if(!$bool){ // return ['ServerNo'=>400,'ResultData'=>'上传文件失败']; // exit; // } // return ['ServerNo'=>200,'ResultData'=>$filename]; # 方法2 //获取原文件的扩展名 $ext = $file->getClientOriginalExtension(); //文件拓展名 //新文件名 $newfile = md5(time().rand(1000,9999)).'.'.$ext; //文件上传的指定路径 $path = public_path('uploads/article'); //将文件从临时目录移动到本地指定目录 if(! $file->move($path,$newfile)){ return ['ServerNo'=>400,'ResultData'=>'保存文件失败'];exit; } return ['ServerNo'=>200,'ResultData'=>$newfile]; }