Upload.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. namespace app\service\controller;
  3. class Upload extends Base
  4. {
  5. //上传图片
  6. public function uploadImg()
  7. {
  8. $file = request()->file('file');
  9. $fileInfo = $file->getInfo();
  10. if ($fileInfo['size'] > 1024 * 512 * 2) {
  11. // 上传失败获取错误信息.
  12. return json(['code' => -2, 'data' => '', 'msg' => '文件超过0.5M'] );
  13. }
  14. //检测图片格式
  15. $ext = explode('.', $fileInfo['name']);
  16. $ext = array_pop($ext);
  17. $extArr = explode('|', 'jpg|png|gif|jpeg');
  18. if(!in_array($ext, $extArr)){
  19. return json(['code' => -3, 'data' => '', 'msg' => '只能上传jpg|png|gif|jpeg的文件']);
  20. }
  21. // 移动到框架应用根目录/public/uploads/ 目录下
  22. $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
  23. if($info){
  24. $src = '/uploads' . '/' . date('Ymd') . '/' . $info->getFilename();
  25. return json(['code' => 0, 'data' => ['src' => $src ], 'msg' => '']);
  26. }else{
  27. // 上传失败获取错误信息
  28. return json(['code' => -1, 'data' => '', 'msg' => $file->getError()]);
  29. }
  30. }
  31. //上传文件
  32. public function uploadFile()
  33. {
  34. $file = request()->file('file');
  35. $fileInfo = $file->getInfo();
  36. /*if($fileInfo['size'] > 1024*1024*2){
  37. // 上传失败获取错误信息
  38. return json( ['code' => -2, 'data' => '', 'msg' => '文件超过2M'] );
  39. }*/
  40. // 检测文件格式
  41. $ext = explode('.', $fileInfo['name']);
  42. $ext = array_pop($ext);
  43. $extArr = explode('|', 'zip|rar');
  44. if(!in_array($ext, $extArr)){
  45. return json(['code' => -3, 'data' => '', 'msg' => '只能上传zip|rar的文件']);
  46. }
  47. // 移动到框架应用根目录/public/uploads/ 目录下
  48. $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
  49. if($info){
  50. $src = '/uploads' . '/' . date('Ymd') . '/' . $info->getFilename();
  51. return json(['code' => 0, 'data' => ['src' => $src ], 'msg' => $fileInfo['name']]);
  52. }else{
  53. // 上传失败获取错误信息
  54. return json(['code' => -1, 'data' => '', 'msg' => $file->getError()]);
  55. }
  56. }
  57. }