如何实现Laravel中多图上传及图片存储的示例代码?

更新于
2026-07-26 17:52:22
15阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计395个文字,预计阅读时间需要2分钟。

如何实现Laravel中多图上传及图片存储的示例代码?

1. 理解文件磁盘配置:配置`public`目录,设置`driver`为`local`,`root`为`app/public`,`url`为`APP_URL/storage`,`visibility`为`public`。在`filesystems.php`文件中创建名为`public`的文件磁盘。

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

如何实现Laravel中多图上传及图片存储的示例代码?

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 多图上传及图片的存储例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

本文共计395个文字,预计阅读时间需要2分钟。

如何实现Laravel中多图上传及图片存储的示例代码?

1. 理解文件磁盘配置:配置`public`目录,设置`driver`为`local`,`root`为`app/public`,`url`为`APP_URL/storage`,`visibility`为`public`。在`filesystems.php`文件中创建名为`public`的文件磁盘。

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

如何实现Laravel中多图上传及图片存储的示例代码?

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 多图上传及图片的存储例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。