微信給出的方法是@+文件的路徑來賦予數組來上傳php
$data = array( 'file' => '@/PATH/TO/FILE', //....其餘字段 ); curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
問題來了,這個@只能在5.5如下的版本用,而在5.5和5.5以上的版本這個就失效了,必須用CURLFile這個類上傳:數組
$data = array( 'file' => new CURLFile('/PATH/TO/FILE'), //....其餘字段 ); curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
可是發現有少許的服務器不支持直接new CURLFile這個類,因此出現這種狀況的時候咱們能夠curl_file_create來建立一個CURLFile的對象(此函數是該函數的別名: CURLFile::__construct() )服務器
$data = array( 'file' => curl_file_create('/PATH/TO/FILE'), //....其餘字段 ); curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
這樣就能夠了。微信