Laravel 6 Blade - 显示 public 文件夹中的所有图像?
Laravel 6 Blade - Display all images inside a public folder?
我无法找到一种方法来访问和显示位于 'public/images' 中的文件夹的内容。目标是有一个 blade 文件充当画廊并显示添加到该特定文件夹的所有图像。
我知道如何使用 asset('images/imagename.png')
访问特定文件,但我需要一次获取所有文件。
我可以简单地在 blade 文件中创建一个循环,还是需要为它创建一个 controller/route?
如果您知道目录,则可以使用 File
门面的 glob
方法。以下代码假定 public/images/
文件夹中的每个文件都是图像。
<div class="container">
@forelse (File::glob('public/images/*') as $file)
<img src="{{ $file }}">
@else
<p id="no-images">No images in folder</p>
@endforelse
</div>
正如 documentation 所暗示的,您可以通过以下方式获取特定目录中的所有文件:
Storage::files($directory);
所以,你可以这样迭代:
@foreach(Storage::files($directory) as $file)
<img src="{{ $file }}">
@endforeach
试试这个:
@foreach(File::glob(public_path('images').'/*') as $path)
<img src="{{ str_replace(public_path(), '', $path) }}">
@endforeach
我无法找到一种方法来访问和显示位于 'public/images' 中的文件夹的内容。目标是有一个 blade 文件充当画廊并显示添加到该特定文件夹的所有图像。
我知道如何使用 asset('images/imagename.png')
访问特定文件,但我需要一次获取所有文件。
我可以简单地在 blade 文件中创建一个循环,还是需要为它创建一个 controller/route?
如果您知道目录,则可以使用 File
门面的 glob
方法。以下代码假定 public/images/
文件夹中的每个文件都是图像。
<div class="container">
@forelse (File::glob('public/images/*') as $file)
<img src="{{ $file }}">
@else
<p id="no-images">No images in folder</p>
@endforelse
</div>
正如 documentation 所暗示的,您可以通过以下方式获取特定目录中的所有文件:
Storage::files($directory);
所以,你可以这样迭代:
@foreach(Storage::files($directory) as $file)
<img src="{{ $file }}">
@endforeach
试试这个:
@foreach(File::glob(public_path('images').'/*') as $path)
<img src="{{ str_replace(public_path(), '', $path) }}">
@endforeach