PHP 使用 Laravel Storage 实现图片上传与展示
PHP 使用 Laravel Storage 实现图片上传与展示/n/n使用 Laravel 的 Storage 类可以轻松实现图片上传功能,并使用 <img> 标签展示图片。/n/n### 实现步骤/n/n1. 在表单中添加 <input type='file'> 元素,用于选择要上传的图片。/n/n2. 在表单提交时,使用 Storage 类的 putFile 方法将图片上传到 Laravel 的存储空间中,并获取上传后的文件路径。/n/nphp/nuse Illuminate/Support/Facades/Storage;/n/nif ($request->hasFile('image')) {/n $path = $request->file('image')->store('images');/n}/n/n/n3. 将文件路径保存到数据库中,以便之后可以根据路径获取图片。/n/n4. 在展示图片的页面中,使用 Storage 类的 url 方法根据文件路径获取图片的 URL,并将其嵌入 <img> 标签中。/n/nphp/n<img src='{{ Storage::url($path) }}' alt='image'>/n/n/n### 完整示例代码/n/n1. 表单页面/n/nhtml/n<form action='/upload' method='POST' enctype='multipart/form-data'>/n @csrf/n <input type='file' name='image'>/n <button type='submit'>上传</button>/n</form>/n/n/n2. 处理上传请求/n/nphp/nuse Illuminate/Support/Facades/Storage;/n/nif ($request->hasFile('image')) {/n $path = $request->file('image')->store('images');/n/n // 将文件路径保存到数据库中/n // .../n/n return redirect('/')->with('success', '上传成功');/n}/n/n/n3. 展示图片页面/n/nphp/nuse Illuminate/Support/Facades/Storage;/n/n// 从数据库中获取文件路径/n// .../n/n<img src='{{ Storage::url($path) }}' alt='image'>/n/n/n注意:/n/n* 确保在 config/filesystems.php 文件中配置了正确的存储驱动。/n* 使用 @csrf 标签保护表单免受跨站请求伪造攻击。/n* 将文件路径保存到数据库中,以便在需要时可以方便地获取图片。
原文地址: https://www.cveoy.top/t/topic/oKIn 著作权归作者所有。请勿转载和采集!