如何以及在哪里可以用laravel存储图像?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何以及在哪里可以用laravel存储图像?相关的知识,希望对你有一定的参考价值。

如何以及在哪里使用laravel存储图像?

上下文:我想在主视图中显示一些图像(这些是我预定义的)。我还想存储用户上传的图像,但是,不知道这些图像的存储位置。

我想从视图中称呼这些......

非常感谢你的帮助。 :)

答案

基本上,只要您有权创建目录和文件,就可以在Laravel应用程序中的任何位置保存文件。

但我更喜欢在storage/app文件夹中保存文件。 Laravel提供了一个简单的API来处理磁盘上的文件。见docs


更新:

Laravel在5.2版本中发布了这个答案。从5.3版开始,您可以通过运行artisan命令php artisan storage:link轻松创建符号链接。见docs

另一答案

如果要在站点上显示它们,请将它们存储在公共目录中。由于它们是由用户上传的,因此您需要通过表单传递它们。这是一个控制器的例子。

  $file = Input::file('picture');
  $file->move(public_path().'/images/',$user->id.'.jpg');

用户将提交带有图片字段的表单。上面的两行将它存储在images文件夹中的公共目录中,相关用户的id作为其名称。您最好在数据库中为图像及​​其路径制作模型。如果这样做,请在上面两个之后添加这些行。

 $image = new Image;
 $image->path='/images/'.$user->id.'.jpg';
 $image->user_id = $user->id;
 $image->save();

要在视图中显示它,只需将$ image变量设置为控制器中的正确图像模型,并将其传递给视图。然后在图像的src中弹出它的路径。

 <img src={{$image->path}} alt={{$image->path}}> 
另一答案

在myapp / public / images中创建图像目录并在那里保留图像。

<img src="{{URL('/images/logo.jpg')}}">

以上是关于如何以及在哪里可以用laravel存储图像?的主要内容,如果未能解决你的问题,请参考以下文章

如何知道 Laravel 版本以及它在哪里定义?

SwiftUI / iOS / iPhone如何在存储之前加密数据/图像以及在哪里/如何在本地存储,一般最佳实践?

在哪里以及如何存储货币汇率?

Firebase CustomClaims 存储在哪里

如何在 Laravel 7 中使用 Livewire 显示存储路径中的图像

Laravel 5 - 我应该在哪里编写这个函数,以及如何编写?