我是这里的初学者所以请原谅我这个问题我正在使用
return File::put($path , $data);
在Laravel的公共文件夹中创建一个文件。我使用了来自控制器的这段代码我需要知道$path
的值应该如何。
使用
public_path()
供参考:
// Path to the project's root folder
echo base_path();
// Path to the 'app' folder
echo app_path();
// Path to the 'public' folder
echo public_path();
// Path to the 'storage' folder
echo storage_path();
// Path to the 'storage/app' folder
echo storage_path('app');
您可以使用 base_path() 获取您的应用程序的基础 - 然后只需将您的公共文件夹添加到其中:
$path = base_path().'/public';
return File::put($path , $data)
注意:非常小心允许人们将文件上传到您的 public_html 根目录。如果他们上传自己的 index.php 文件,他们将接管您的网站。
我知道这有点晚了,但是如果其他人遇到这种情况,您现在可以使用 public_path();在 Laravel 4 中,它已被添加到支持文件夹中的 helper.php 文件中see here.
从 Laravel 配置中检索公共文件夹路径的最佳方法是函数:
$myPublicFolder = public_path();
$savePath = $mypublicPath."enter_path_to_save";
$path = $savePath."filename.ext";
return File::put($path , $data);
不需要所有的变量,但这只是为了演示目的。
希望这有帮助, GRnGC
我觉得你要找的是asset('');创建符号链接后,您可以使用 asset('storage')。
asset('public')
或
url('public')