温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用laravel怎么实现多图上传和存储功能

发布时间:2021-06-07 17:01:55 来源:亿速云 阅读:311 作者:Leah 栏目:开发技术

这篇文章给大家介绍使用laravel怎么实现多图上传和存储功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1.了解文件磁盘配置:

'public' => [
      'driver' => 'local',
      'root' => storage_path('app/public'),
      'url' => env('APP_URL').'/storage',
      'visibility' => 'public',
    ],

在filesystems.php文件中创建了一个名为 public的文件磁盘,使用的驱动为本地存储,'root'表示的是文件最终存储的目标路径是storage/app/public, ‘url' 表示的是文件的url,'visibility'表示的是可见性

2.创建软连接,在项目的根目录运行如下命令:

php artisan storage:link

如果是线上代码,则需要在服务器中的项目根目录运行。

软连接的创建意味着项目的 …/public/storage/ 路径直接指向了 …/storage/app/public/ 目录

3.接收图片并存储,返回存储的图片的url

class UploadController extends Controller
{
  public function upload()
  {
    $imgs = [];
    if (request()->hasFile('file')){
      foreach (request()->file('file') as $file){
      //将图片存储到了 ../storage/app/public/product/ 路径下
        $path = $file->store('public/product');
        $path = str_replace('public','',$path);
        $imgs[]= asset('storage/'.$path);
      }
       return response()->json([
          'errno'=>0,
          'data'=>$imgs
        ]);
    }else{
      return response()->json([
        'info'=>'没有图片'
      ]);
    }
    //处理多图上传并返回数组
  }
}

关于使用laravel怎么实现多图上传和存储功能就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI