我需要以PHP的Byte []形式將文件的內容發佈到網頁(C#)。我試過使用cURL
和stream_context_create()
,但是我認爲它歸結爲我如何讀出文件。將文件內容作爲Byte []從PHP應用程序發佈到.NET ASP
我的帖子內容/ CURLOPT_POSTFIELDS樣子:
$data .= "\r\n--" . $boundary . "\r\n";
$data .= "Content-Disposition: form-data; name=\"file\"; filename=\"" . $files['name'][$id] . "\"\r\n";
$data .= "Content-Type: application/octet-stream\r\n\r\n";
$data .= file_get_contents($files['tmp_name'][$id]) . "\r\n";
$data .= "--" . $boundary . "--\r\n";
但是,這是行不通的。
Post byte array from PHP to .NET WCF Service說file_get_contents()
是兼容的 - 但我沒有找到任何證據。
http://bytes.com/topic/php/answers/869014-how-convert-gif-file-byte-array-thanks聲明這是不可能的。 (沒有什麼是不可能的!)
我也使用fread()
fopen()
和file()
等
PS的變化試過我知道web服務在C有點相同的腳本工作的罰款++/Java的等工作正常。 file.readAll()
是唯一的區別file_get_contents()
行是...
感謝任何意見或解決我的悲哀的答案!
我傾向於同意,錯誤很可能會在我的結束。我確實有一些關於這個地方的嘗試,以及一個標準的if($ err === UPLOAD_ERR_OK)'。表單肯定會發布到服務器,並且內容長度與我上傳的文件大小一致。我會盡量加大了錯誤處理(據我所知它已經刷爆了),但是.. – amcc
至少在'file_get_contents'行我看不出有任何錯誤檢查,其他注意事項僅僅是因爲它在某種程度上常見的人往往忘記小費。 – hakre
我把它的簡單性的目的,我的例子^ – amcc