php在5.6以后修改了上传文件的方法
以下是上传图片示例
public function upload_media_test($file,$access_token){
$url="http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token={$access_token}&type=image";
$file_data['media']=new CURLFile(realpath($file));
$result=json_decode(uploadMedia($url,$file_data),1);
var_dump($result);
}
function uploadMedia($url,$fields){
$ch = curl_init($url) ;
curl_setopt ($ch, CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch) ;
if (curl_errno($ch)) {
return curl_error($ch);
}
curl_close($ch);
return $result;
}