我有一種情況,我需要將文件從一個位置移動到另一個位置。使用cURL,很容易下載文件,然後使用符號中的甜點(即「file_box」=>「@/path/to/myfile.jpg」)上傳它們。我現在要做的是繞過保存步驟中間只是將文件從一個「流」到另一個。這可能嗎?cURL php下載和上傳時未保存在中間
2
A
回答
1
當然,你可以做到這一點。我不確定你可以使用cURL作爲POST。你必須研究它的方法,看看它是否會讓你回調下一塊數據。
http://curl.haxx.se/libcurl/php/examples/callbacks.html
$ch = curl_init();
curl_set_opt($ch, CURLOPT_HEADERFUNCTION, 'read_header');
curl_set_opt($ch, CURLOPT_WRITEFUNCTION, 'read_body');
function read_header($ch, $data) {
// Ok, so the header is going to come in here.
// I assume you will need data, such as MIME type and what not.
print_r($data);
return strlen($data); //This means that we handled it, so cURL will keep processing
}
function read_body($ch, $data) {
// This is where the body of the content will be, in chunks.
// This function will be called multiple times.
print_r($data);
return strlen($data); //Again, if we don't do this, cURL will cancel.
}
現在的發送部分,似乎你必須自己實現HTTP與fsockopen
。在這裏看到更多的信息:PHP How To Send Raw HTTP Packet
0
我現在實際上工作與類似的問題。就我的經驗而言,您必須打開一個文件句柄,並將數據保存到本地,然後才能將其上傳到另一臺服務器。
我知道你是什麼意思的流媒體,因爲你想流/管你正在下載的文件到PUT或POST到另一臺服務器。
我不認爲流媒體是可能的與PHP捲曲。您需要在本地保存文件。然後打開並上傳它。
我已經完成了與Java類似的工作,你實際上正在使用流,所以這可能工作,但我還沒有嘗試過。
相關問題
- 1. 使用PHP Curl計算下載時間
- 2. 通過php保存和加載時間以及在舞臺上顯示時間
- 3. Curl同時下載和上傳相同的文件
- 4. 在PHP中下載代碼錯誤?上傳和下載表格
- 5. 估計下載和上傳文件的時間(在python中)
- 6. cURL上傳/下載速度測試
- 7. PHP + PDF,如何使用curl保存下載的PDF?
- 8. JFrame組件上傳時間未加載
- 9. 保留php上傳時間戳
- 10. PHP - 通過FREAD文件下載保存最後修改時間
- 11. PHP 7 curl未加載
- 12. 使用PHP和CURL下載htaccess保護的文件
- 13. PHP cURL加載時間過長
- 14. 保存時上傳?
- 15. 用PHP和cURL提供服務下載
- 16. 使用PHP和cURL下載文件
- 17. PHP上傳和下載文件
- 18. 使用Greasemonkey和PHP下載並上傳
- 19. FTP通過PHP上傳和下載
- 20. PHP上傳和下載腳本
- 21. 未能在curl中上傳curro文件php app
- 22. php curl下載頁面一定時間後
- 23. 如何在php中打斷curl上傳?
- 24. php cURL cookie保存爲空
- 25. CURL不保存Cookies(PHP)
- 26. PHP CURL下載文件
- 27. PHP Curl下載問題
- 28. php curl下載tbz文件?
- 29. php curl下載站95%
- 30. 用PHP和cURL上傳圖像
你在上傳什麼? – Brad
您不能使用curl讓一個遠程服務器與另一個遠程服務器對話,除非這些遠程服務器中的任何一個暴露了某些功能。 –
@MarcB如果他使用上傳文件的臨時位置作爲cURL腳本的路徑,爲什麼它不起作用? –