laravel 多图上传及图片的存储例子

(编辑:jimmy 日期: 2026/1/27 浏览:2)

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

一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?