php curl post一个文件怎么实现,按照网上说的方法不行,谁能给个demo

沉沦的小孩 2017-11-21 06:28:38
参数为一个数组array(‘file_update’=>@文件路径)
$ch = curl_init();
//设置超时
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, 1); //POST提交
curl_setopt($ch, CURLOPT_POSTFIELDS,http_build_query($data));
$res = curl_exec($ch);
curl_close($ch);
这样不行
...全文
165 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
沉沦的小孩 2017-11-23
  • 打赏
  • 举报
回复
解决了 文件路径前加curl_file_create 就可以了
Just_cl 2017-11-22
  • 打赏
  • 举报
回复
curlFile.php
$ch = curl_init();
$filePath = __DIR__.'/1.jpg';
$data = ['name' => 'Foo', 'file' => '@' . $filePath];
if (class_exists('\CURLFile')) {
    $data['file'] = new \CURLFile(realpath($filePath));
} else {
    if (defined('CURLOPT_SAFE_UPLOAD')) {
        curl_setopt($ch, CURLOPT_SAFE_UPLOAD, FALSE);
    }
}
curl_setopt($ch, CURLOPT_URL, 'http://localhost/file/file.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
//$info=curl_getinfo($ch);
curl_close($ch);
file.php
echo '<pre>';
print_r($_FILES['file']);
看看行不

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧