在 Laravel 视图中访问上传的图像:综合指南
在 Web 开发领域,遇到显示的需求是很常见的在视图中上传图像。 Laravel 是一个著名的 PHP 框架,提供了用于管理文件存储和无缝渲染上传图像的选项。
问题: 用户上传了存储在 Laravel 存储目录中的头像。挑战在于在视图中访问和显示这些图像,特别是考虑到服务器将请求路由到公共目录。
解决方案:
最佳解决方案是建立公共目录和存储目录之间的符号链接。在 Laravel 5.3 及以后的版本中,此任务通过专用命令得到简化:
php artisan storage:link
此命令有效地创建从 public/storage 到 storage/app/public 的符号链接,授予对 storage/app/public 中文件的访问权限通过如下 URL:
http://somedomain.com/storage/image.jpg
替代方法:
如果符号链接不可用或需要访问控制措施,则存在替代方法。定义读取和提供图像的自定义路由:
Route::get('storage/{filename}', function ($filename) { // ... code to retrieve and render the image });
性能注意事项:
需要注意的是,通过自定义路由手动提供图像会产生性能问题惩罚。这是因为整个 Laravel 请求周期都是为了处理和传递图像而执行的。让 HTTP 服务器处理文件服务通常会更有效。
总之,Laravel 提供了两种在视图中访问和显示上传图像的有效方法:符号链接和自定义路由。最佳选择取决于应用程序的具体要求,平衡性能、安全性和便利性。
以上是如何在我的视图中显示 Laravel 存储目录中上传的图片?的详细内容。更多信息请关注PHP中文网其他相关文章!