2017-04-18 53 views
0

您好我想要使用PHP file_put_contents到光柵文件保存到本地驅動器。光柵文件是通過curl請求獲取的,如果打開瀏覽器(文件可下載),url鏈接工作得很好,但file_put_contents不會將任何內容保存到文件夾。下面是我的PHP僞代碼:file_put_contents將不保存文件

$ch = curl_init(working_url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$save = curl_exec($ch); 
curl_close($ch); 
file_put_contents($path_of_file, $save); 

我已經777權限並有充分的寫入和讀取的文件夾和保存路徑是正確的。

+0

請提供curl結果,url也 – Peter

+0

'file_put_contents'返回什麼?$ save'有一個值 – Eknoes

+0

是你正在編寫由Web服務器可寫的文件夾 – gabe3886

回答

0

試試這個:

$save = file_get_contents($working_url); 
file_put_contents($path_of_file, $save); 

並請檢查:

  • 你可以寫你在$正確的內容保存可變

目標文件夾

  • 也許提供我們的網址來檢查它。

  • +0

    感謝您格式化 – Peter

    +0

    做或不​​做。沒有「嘗試」。一個好的答案***將總是解釋所做的事情以及爲什麼這樣做,不僅是爲了OP,還是爲了將來訪問SO。 –

    +0

    感謝您的建議,我只是做了一個快速嘗試,它仍然無法正常工作......我對文件夾擁有完全的權限,並且此次我再次對網址進行了重新檢查,仍然可以在瀏覽器中正常工作:/ –

    1

    所以我想通了這個問題,這是一個路徑問題;我在我的index.html中使用Javascript將ajax信息傳遞給我的php文件;在php文件中執行curl,下載數據並將位置路徑返回到JSON數據流中的index.html。因爲我的數據結構,返回到我的index.html路徑不是正確的路徑(我用「../../filesave」。謝謝大家的幫助!

    在未來,如果任何人有類似的問題,請務必首先檢查保存路徑,並檢查是否具有對工作區的寫入和讀取權限