Laravel 在控制器中写入相对路径
上载图像时,我有以下路径:Laravel 在控制器中写入相对路径,laravel,laravel-5.3,Laravel,Laravel 5.3,上载图像时,我有以下路径: public function uploadImage() { $target_dir = 'C:\xampp\htdocs\application\public\newuploads'; ... 它工作得很好。 但是,当我上传到生产服务器时,我将其更改为: $target_dir = 'www.mywebsite.com\public\newuploads'; 这给了我一个错误: 移动上传的文件(www.mywebsite.com\publ
public function uploadImage()
{
$target_dir = 'C:\xampp\htdocs\application\public\newuploads';
...
它工作得很好。
但是,当我上传到生产服务器时,我将其更改为:
$target_dir = 'www.mywebsite.com\public\newuploads';
这给了我一个错误:
移动上传的文件(www.mywebsite.com\public\newuploads/1487912832)。
jpg):无法打开流:没有这样的文件或目录
如何改为写入相对路径?根据您的生产服务器,您可能有不同的根目录。也就是说,您可以使用公共路径根,而不是使用完整的文件夹路径,例如
$target_dir = '/newuploads';
这样,如果底层操作系统和文件系统发生更改,您的站点操作将完好无损 永远不要硬编码路径。使用帮助程序获取公用目录的路径:
public_path('newuploads')
切勿对本地或实时服务器使用任何静态路径 Laravel提供了许多功能来实现这一点: 就像这样使用它:
$target_dir = public_path()."/newuploads";
在本地和现场环境中使用相同的方法
这会奏效的
有关详细信息和Laravel辅助函数,请检查以下内容:
谢谢