海南旅游SAAS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
841 B

  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Http\Request;
  5. /**
  6. * 文件上传
  7. * Class UploadController
  8. * @package App\Http\Controllers\Api
  9. */
  10. class UploadController extends Controller
  11. {
  12. private string $save_path = '/user/';
  13. //图片上传
  14. public function image(Request $request)
  15. {
  16. $image = $request->file('image');
  17. if (empty($image) || !$image->isValid()) {
  18. return $this->error('您未上传任何文件');
  19. }
  20. $mime = $image->getMimeType();
  21. if (!in_array($mime, ['image/jpeg', 'image/png', 'image/gif', 'image/pjpeg'])) {
  22. return $this->error('上传图片格式错误');
  23. }
  24. $path = $request->image->store($this->save_path . 'images/' . $this->agent_id, 'public');
  25. return $this->success(['path' => config('filesystems.disks.public.url') . '/' . $path]);
  26. }
  27. }