程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php curl 上傳文件代碼實例

php curl 上傳文件代碼實例

編輯:關於PHP編程

       這篇文章主要介紹了php curl 上傳文件代碼實例,本文給出了兩種實現方法,並分別給出了實現代碼,需要的朋友可以參考下

      假設server端上傳文件處理腳本upload.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="$namernContent-Type: $typern";

      $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;

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved