1. 程式人生 > >php curl上傳文件

php curl上傳文件

result urn data med 5.5 pre ans 然而 微信

如果PHP 5 >= 5.5.0, PHP 7,推薦使用CURLFile類設置文件信息

$real_path=$_SERVER[‘DOCUMENT_ROOT‘].‘/Public/Public/Images/1.jpg‘;//文件絕對路徑
$data= array(
        "media"=>new CURLFile($real_path) 
        );
        $timeout = 5;
        $ch = curl_init ();
        curl_setopt ( $ch, CURLOPT_URL, $api );
        curl_setopt ( 
$ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $timeout ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data
); $result = curl_exec ( $ch );

根據php手冊也可以這樣設置,

$real_path=$_SERVER[‘DOCUMENT_ROOT‘].‘/Public/Public/Images/1.jpg‘;//文件絕對路徑
        $data= array(
        "media"=>@$real_path /*註意@*/
        );
        $timeout = 5;
        $ch = curl_init ();
                curl_setopt ( $ch, CURLOPT_SAFE_UPLOAD,false
);/*設置為false*/ curl_setopt ( $ch, CURLOPT_URL, $api ); curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $timeout ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data); $result = curl_exec ( $ch );

然而我在本地測試成功.使用微信公眾平臺上傳圖片接口卻失敗,說找不到文件,有時間時要好好研究一下.

php curl上傳文件