如何获取Laravel存储文件夹的路径?


70

我想将上传的图像存储到Laravelstorage目录的子目录中的基于Laravel的Web应用程序中。它是与“应用程序”和“公共”目录相同层次结构的目录。

是否有执行此操作的框架方法?我已经搜索过文档,但找不到。

Answers:



74

对于Laravel 5.x,请使用$storage_path = storage_path()

Laravel 5.0文档

storage_path

获取storage目录的标准路径。

另请注意,对于Laravel 5.1及更高版本根据Laravel 5.1 docs

您还可以使用该storage_path函数生成相对于存储目录的给定文件的标准路径:

$path = storage_path('app/file.txt');

25

对于Laravel版本> = 5.1

storage_path()

storage_path函数返回到存储目录的标准路径:

$path = storage_path();

您还可以使用该storage_path函数生成相对于存储目录的给定文件的标准路径:

$app_path = storage_path('app');
$file_path = storage_path('app/file.txt');

资料来源: Laravel Doc


记录下来,这个答案的缺点是我的。我之所以投票,是因为所有散文都是从文档中复制并粘贴的,但是它们都没有用引号引起来,也没有格式化为块引用,这违反了我们的引用政策。我只想发表评论以表示歉意。我以为我以前发表过评论,但显然没有。另外,我认为将有关Laravel 5.1的注释作为对我的答案(现已制作)的编辑比起最初作为独立答案来做更有用。
Mark Amery

3

使用此artisan命令在公用文件夹中创建快捷方式

php artisan storage:link

比您将能够访问发布的img或文件


-2

您可以使用该storage_path();功能获取存储文件夹路径。

storage_path(); // Return path like: laravel_app\storage

假设您要将mylog.log日志文件保存在存储文件夹的日志文件夹中。你必须写类似

storage_path() . '/LogFolder/mylog.log'

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.