2017-02-24 51 views
1

的相对路径在上传图片,我有这样的路径:写作控制器

public function uploadImage() 
{ 
    $target_dir = 'C:\xampp\htdocs\application\public\newuploads'; 
    ... 

它工作得很好。 但是,当我上传到生产服务器我将其更改为:

$target_dir = 'www.mywebsite.com\public\newuploads'; 

它给我的错误:

move_uploaded_file(www.mywebsite.com\public\newuploads/1487912832. jpg): failed to open stream: No such file or directory

我怎么能写的相对路径呢?

回答

1

你不应该硬编码路径。使用public_path()助手去公共目录路径:

public_path('newuploads') 
0

根据您的生产服务器,您可能有不同的根目录。话虽这么说,而是采用了完整的文件夹路径,您可以使用该公共路径根如

$target_dir = '/newuploads'; 

如果底层的操作系统和文件系统的变化,你的网站运营是完好的方式。

1

切勿使用本地或现场服务器上的任何静态路径。

Laravel提供了很多功能,要做到这一点:

只是用它喜欢:

$target_dir = public_path()."/newuploads"; 

使用本地和生活环境相同。

这将工作。

的更多细节和Laravel助手功能,您可以检查此:

https://laravel.com/docs/5.4/helpers

感谢