Heim >Backend-Entwicklung >PHP-Tutorial >关于php 5.5以上 CURL上传的问题(微信"errcode":41005,"errmsg",)

关于php 5.5以上 CURL上传的问题(微信"errcode":41005,"errmsg",)

WBOY
WBOYOriginal
2016-06-23 13:25:50841Durchsuche

微信给出的方法是@+文件的路径来赋予数组来上传

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

这样就可以了。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn