php curl 上傳文件代碼實例
更新時間:2015年04月27日 09:21:43 投稿:junjie
這篇文章主要介紹了php curl 上傳文件代碼實例,本文給出了兩種實現(xiàn)方法,并分別給出了實現(xiàn)代碼,需要的朋友可以參考下
假設(shè)server端上傳文件處理腳本upload.php:
復(fù)制代碼 代碼如下:
<?php
print_r($_POST);
print_r($_FILES);
1、使用 CURL 默認的方法
復(fù)制代碼 代碼如下:
//如果php文件是utf8編碼,系統(tǒng)是GBK編碼,那么就需要轉(zhuǎn)下編碼,要不然Php在系統(tǒng)中找不到這個文件
$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、另類的做法,有時我們需要將動態(tài)產(chǎn)生的內(nèi)容當做文件上傳到遠程服務(wù)器,卻又不想在本地服務(wù)器中構(gòu)建臨時文件。這樣就有了這個另類的寫法
復(fù)制代碼 代碼如下:
$contents =<<< 'TEXT'
這里是文件內(nèi)容,也可以是圖片二進制,圖片需要修改上傳文件類型
TEXT;
$varname = 'my';//上傳到$_FILES數(shù)組中的 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;
您可能感興趣的文章:
相關(guān)文章
Server.HTMLEncode讓代碼在頁面里顯示為源代碼
這篇文章為大家介紹的是把寫入數(shù)據(jù)庫的html源代碼以html源編碼的形式顯示在頁面里面,這個是asp中的函數(shù)2013-12-12Sorting Array Values in PHP(數(shù)組排序)
有時候,你可能需要對數(shù)組內(nèi)的值進行排序,那么就可以參考下面的文章。2011-09-09php模擬asp中的XmlHttpRequest實現(xiàn)http請求的代碼
為了自己方便模擬asp里面的xmlhttp組件寫的phphttp請求類,基本的功能都實現(xiàn)了,支持gzip壓縮2011-03-03備份mysql數(shù)據(jù)庫的php代碼(一個表一個文件)
用php實現(xiàn)的備份MySQL數(shù)據(jù)庫的代碼,需要的朋友可以參考下。2010-05-05Nginx服務(wù)器上安裝并配置PHPMyAdmin的教程
這篇文章主要介紹了Nginx服務(wù)器上安裝并配置PHPMyAdmin的教程,附帶一條PHPMyAdmin加載慢的解決方法:)需要的朋友可以參考下2015-08-08