2017-02-24 50 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

感謝