您好,登錄后才能下訂單哦!
這篇文章主要講解了“php curl如何上傳文件”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“php curl如何上傳文件”吧!
復制代碼 代碼如下:
<?php
print_r($_POST);
print_r($_FILES);
1、使用 CURL 默認的方法
復制代碼 代碼如下:
//如果php文件是utf8編碼,系統是GBK編碼,那么就需要轉下編碼,要不然Php在系統中找不到這個文件
$file = realpath(mb_convert_encoding('測試圖片.JPG','GBK','utf8'));
$file = realpath('temp.jpg'); //要上傳的文件
$fields['f'] = '@'.$file; // 前面加@符表示上傳圖片
$ch =curl_init();
curl_setopt($ch,CURLOPT_URL,'http://localhost/upload.php');
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$content = curl_exec($ch);
echo $content;
2、另類的做法,有時我們需要將動態產生的內容當做文件上傳到遠程服務器,卻又不想在本地服務器中構建臨時文件。這樣就有了這個另類的寫法
復制代碼 代碼如下:
$contents =<<< 'TEXT'
這里是文件內容,也可以是圖片二進制,圖片需要修改上傳文件類型
TEXT;
$varname = 'my';//上傳到$_FILES數組中的 key
$name = '3.txt';//文件名
$type = 'text/plain';//文件類型
$key = "$varname\"; filename=\"$name\r\nContent-Type: $type\r\n";
$fields[$key] = $contents;
$ch =curl_init();
curl_setopt($ch,CURLOPT_URL,'http://localhost/upload.php');
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$content = curl_exec($ch);
echo $content;
感謝各位的閱讀,以上就是“php curl如何上傳文件”的內容了,經過本文的學習后,相信大家對php curl如何上傳文件這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。