加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

您采取什么步骤解决PHP cURL的问题?

发布时间:2020-12-13 14:04:17 所属栏目:PHP教程 来源:网络整理
导读:几乎任何工作的 PHP程序员都不得不使用CURL发送原始HTTP请求,无论是用于信用卡付款处理,恶意屏幕抓取还是其间的内容. 几乎任何PHP程序员聚集的论坛都有大量的can’t get the cURL functions to do what they want人. 当cURL不适合您时,您使用哪些疑难解答技
几乎任何工作的 PHP程序员都不得不使用CURL发送原始HTTP请求,无论是用于信用卡付款处理,恶意屏幕抓取还是其间的内容.

几乎任何PHP程序员聚集的论坛都有大量的can’t get the cURL functions to do what they want人.

当cURL不适合您时,您使用哪些疑难解答技术来确定为什么它不起作用? PHP的卷曲实现有什么奇怪的问题你遇到了吗?如果有人在论坛上提出“HALP MY CURL IZ BROKEN”问题,那么您需要采取什么步骤才能确定他们的请求为何不起作用?

我发现CURLINFO_HEADER_OUT选项非常有用.
<?php
$curl = curl_init('http://www.php.net');

curl_setopt($curl,CURLOPT_HEADERFUNCTION,'dbg_curl_data');
curl_setopt($curl,CURLOPT_WRITEFUNCTION,CURLINFO_HEADER_OUT,true);

curl_exec($curl);

echo '<fieldset><legend>request headers</legend>
  <pre>',htmlspecialchars(curl_getinfo($curl,CURLINFO_HEADER_OUT)),'</pre>
</fieldset>';

echo '<fieldset><legend>response</legend>
  <pre>',htmlspecialchars(dbg_curl_data(null)),'</pre>
</fieldset>';

function dbg_curl_data($curl,$data=null) {
  static $buffer = '';

  if ( is_null($curl) ) {
    $r = $buffer;
    $buffer = '';
    return $r;
  }
  else {
    $buffer .= $data;
    return strlen($data);
  }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读