美文网首页
使用CURL上传文件

使用CURL上传文件

作者: 宇VS然 | 来源:发表于2019-01-02 23:36 被阅读0次

近日再使用一个第三方接口的时候,使用curl调用一个上传文件的接口。

再多次失败后,终于找到了真经!!!

言归正传~

PHP的cURL支持通过给CURL_POSTFIELDS传递关联数组(而不是字符串)来生成multipart/form-data的POST请求。

PHP的cURL支持通过在数组数据中,使用“@+文件全路径”的语法附加文件,供cURL读取上传。

这与命令行直接调用cURL程序的语法是一致的:

curl_setopt(ch, CURLOPT_POSTFIELDS, array(

        'file' => '@'.realpath('test.jpg'), 

)); 

equals

$ curl -F "file=@/some/path/test.jpg"

php5.5开始引入了新的CURLFile类用来指向文件。CURLFile类也可以详细定义MIME类型、文件名等可能出现在multipart/form-data数据中的附加信息。推荐使用CURLFile替代旧的@语法:

curl_setopt(ch, CURLOPT_POSTFIELDS, [

    'file' => new CURLFile(realpath('image.png')), 

]);

使用CURL上传文件

相关文章

网友评论

      本文标题:使用CURL上传文件

      本文链接:https://www.haomeiwen.com/subject/jrkxrqtx.html