请选择 进入手机版 | 继续访问电脑版

壹柒佰

 找回密码
 立即注册
搜索
查看: 619|回复: 0

php curl 提交数据 [含有多维数组和文件上传]的解决办法

[复制链接]

70

主题

76

帖子

602

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
602
发表于 2017-3-2 14:28:48 | 显示全部楼层 |阅读模式
在用PHP 使用CURL 提交数据时 如果数据是多维数组并且含有文件上传时改这么解决呢?
下面贴上常用的CURL函数
  1. function curlpost($data, $path)
  2. {
  3.     $ch = curl_init();
  4.     curl_setopt($ch, CURLOPT_URL, $path);
  5.     curl_setopt($ch, CURLOPT_POST, 1);
  6.     curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
  7.     // 这一句是最主要的
  8.     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  9.     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  10.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  11.     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
  12.     curl_setopt($ch, CURLOPT_TIMEOUT, 10);


  13.    //下面这句代码这样写的话 如果是数据里面含有文件的话 就接收不到文件
  14.    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));


  15.     $result = curl_exec($ch);
  16.     $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  17.     curl_close($ch);
  18.     return $result;
  19. }
复制代码

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));代码这样写的话 如果是数据里面含有文件的话 就接收不到文件

换成下面这句
  1. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
复制代码
这样的话 如果数据里含有多维数组的话 这个多维数组也将接收不到

解决方法:
游客,如果您要查看本帖隐藏内容请回复


回复

使用道具 举报

Archiver|手机版|小黑屋|壹柒佰  

GMT+8, 2018-5-25 23:00 , Processed in 0.188740 second(s), 21 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

在线咨询
关注公众号

扫一扫
获取最新资讯

在线技术支持

扫一扫
在线技术支持

返回顶部