首页 >后端开发 >php教程 > 正文

PHP用CURL访问远程URL出现:Cannot modify header information...错误

原创2016-08-23 09:17:480650
curl代码:

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);  //请求URL
        curl_setopt($ch, CURLOPT_HEADER, 0);  //禁止输出头部信息
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //获取信息以文件流的格式返回
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        if( !is_null($postData) ){
            curl_setopt($ch, CURLOPT_POST, 1);  //POST提交
            curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
        }
        $return = curl_exec($ch);
        curl_close($ch);
        return $return;

出现错误:

Cannot modify header information - headers already sent by...

直接在浏览器中访问URL并没有爆出错误。

我在网上也搜索了上述问题的解决方法,大部分都是修改PHP文件或者修改PHP配置等。。。但是我的想法是,用CURL达到和浏览器访问同样的效果?该怎么实现?因为浏览其访问该URL并没有错误产生。

回复内容:

curl代码:

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);  //请求URL
        curl_setopt($ch, CURLOPT_HEADER, 0);  //禁止输出头部信息
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //获取信息以文件流的格式返回
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        if( !is_null($postData) ){
            curl_setopt($ch, CURLOPT_POST, 1);  //POST提交
            curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
        }
        $return = curl_exec($ch);
        curl_close($ch);
        return $return;

出现错误:

Cannot modify header information - headers already sent by...

直接在浏览器中访问URL并没有爆出错误。

我在网上也搜索了上述问题的解决方法,大部分都是修改PHP文件或者修改PHP配置等。。。但是我的想法是,用CURL达到和浏览器访问同样的效果?该怎么实现?因为浏览其访问该URL并没有错误产生。

你需要一个 封装好 curl 的库

我查了查stackoverflow,可能是你的文件编码带了BOM头。
尝试将编码改为UTF-8无BOM格式。

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息

    php中文网

    认证0级讲师

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类