Maison > Article > développement back-end > PHP用CURL访问远程URL出现:Cannot modify header information...错误
curl代码:
<code> $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;</code>
出现错误:
<code>Cannot modify header information - headers already sent by...</code>
直接在浏览器中访问URL并没有爆出错误。
我在网上也搜索了上述问题的解决方法,大部分都是修改PHP文件或者修改PHP配置等。。。但是我的想法是,用CURL达到和浏览器访问同样的效果?该怎么实现?因为浏览其访问该URL并没有错误产生。
curl代码:
<code> $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;</code>
出现错误:
<code>Cannot modify header information - headers already sent by...</code>
直接在浏览器中访问URL并没有爆出错误。
我在网上也搜索了上述问题的解决方法,大部分都是修改PHP文件或者修改PHP配置等。。。但是我的想法是,用CURL达到和浏览器访问同样的效果?该怎么实现?因为浏览其访问该URL并没有错误产生。
你需要一个 封装好 curl 的库
我查了查stackoverflow,可能是你的文件编码带了BOM头。
尝试将编码改为UTF-8无BOM格式。