【发布时间】:2013-05-11 22:25:07
【问题描述】:
我想将上传的图像存储到我基于 Laravel 的网络应用程序的 Laravel storage 目录的子目录中。它是与“应用程序”和“公共”目录处于同一层次结构级别的目录。
是否有执行此操作的框架方法?我搜索了文档,但找不到。
【问题讨论】:
我想将上传的图像存储到我基于 Laravel 的网络应用程序的 Laravel storage 目录的子目录中。它是与“应用程序”和“公共”目录处于同一层次结构级别的目录。
是否有执行此操作的框架方法?我搜索了文档,但找不到。
【问题讨论】:
对于 Laravel 5.x,请使用 $storage_path = storage_path()。
存储路径
获取
storage目录的完全限定路径。
另请注意,对于 Laravel 5.1 及更高版本,per the Laravel 5.1 docs:
您还可以使用
storage_path函数生成给定文件相对于存储目录的完全限定路径:$path = storage_path('app/file.txt');
【讨论】:
在 Laravel 3 中,调用 path('storage')。
在 Laravel 4 中,使用 storage_path() 辅助函数。
【讨论】:
storage_path 函数返回存储目录的完全限定路径:
$path = storage_path();
您还可以使用storage_path 函数生成给定文件相对于存储目录的完全限定路径:
$app_path = storage_path('app');
$file_path = storage_path('app/file.txt');
来源: Laravel Doc
【讨论】:
使用此工匠命令在公用文件夹中创建快捷方式
php artisan storage:link
比你可以访问张贴的 img 或文件
【讨论】:
您可以使用storage_path();函数获取存储文件夹路径。
storage_path(); // Return path like: laravel_app\storage
假设您要将日志文件mylog.log 保存在存储文件夹的日志文件夹中。你必须写一些类似的东西
storage_path() . '/LogFolder/mylog.log'
【讨论】:
Laravel 8.x
如果默认磁盘中的文件:/storage/app/public/file.jpg,那么:
$path = Storage::path('file.jpg');
如果文件在不同的存储中。例如:/storage/app/storage-dir/sub-dir/file.txt
Storage::disk('storage-dir')->path('sub-dir/file.txt')
$path 将是“/var/www/project1/storage/app/storage-dir/sub-dir/file.txt”
还有url()
$path = Storage::disk('storage-dir')->url('sub-dir/file.txt');
这将返回如下路径:/storage/sub-dir/file.txt
对于早期的 Laravel 版本:
storage_path('app/file.txt');
【讨论】: