PHP实现获取“curl请求头和curl响应头”代码

今天在维护一个前几年的小项目的时候,用的是PHP CURL写的,现在要求需要获取请求头和响应头。虽然说方法有很多,既然别人用的是CURL,我们就不改了,也就用CURL在那个基础上去增加获取“curl请求头和curl响应头”功能吧!具体如下:

 

一、PHP从CURL中获取响应头 代码

<?php
$oCurl = curl_init();
// 设置请求头, 有时候需要,有时候不用,看请求网址是否有对应的要求
$header[] = "Content-type: application/x-www-form-urlencoded";
$user_agent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36";

// 设置 URL地址与端口
curl_setopt($oCurl, CURLOPT_URL, "www.fujieace.com");
curl_setopt($oCurl, CURLOPT_PORT, "80");

curl_setopt($oCurl, CURLOPT_HTTPHEADER,$header);

// 返回 response_header, 该选项非常重要,如果不为 true, 只会获得响应的正文
curl_setopt($oCurl, CURLOPT_HEADER, true);

// 是否不需要响应的正文,为了节省带宽及时间,在只需要响应头的情况下可以不要正文
curl_setopt($oCurl, CURLOPT_NOBODY, true);

// 使用上面定义的 user_agent
curl_setopt($oCurl, CURLOPT_USERAGENT,$user_agent);
curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1 );

// 不用 POST 方式请求, 意思就是通过 GET 请求
curl_setopt($oCurl, CURLOPT_POST, false);

$sContent = curl_exec($oCurl);

// 获得响应结果里的:头大小
$headerSize = curl_getinfo($oCurl, CURLINFO_HEADER_SIZE);

// 根据头大小去获取头信息内容
$header = substr($sContent, 0, $headerSize);

var_dump($header);

curl_close($oCurl);

 

最终效果如下:

PHP从CURL中获取响应头

 

二、PHP从curl中获取请求头 代码

<?php
$oCurl = curl_init();
$header[] = "Content-type: application/x-www-form-urlencoded";
$user_agent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36";

curl_setopt($oCurl, CURLOPT_URL, "https://fujieace.com/wp-signup.php");
curl_setopt($oCurl, CURLOPT_HTTPHEADER, $header);

//关闭https验证
curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, false);

//至关重要,CURLINFO_HEADER_OUT选项可以拿到请求头信息
curl_setopt($oCurl, CURLINFO_HEADER_OUT, TRUE);
curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($oCurl, CURLOPT_POST, 1);

$bodystr = '';
curl_setopt($oCurl, CURLOPT_POSTFIELDS, $bodystr);

$sContent = curl_exec($oCurl);

//通过curl_getinfo()可以得到请求头的信息
$info =curl_getinfo($oCurl);

var_dump($info['request_header']);

 

最终效果:

PHP从curl中获取请求头

    A+
发布日期:2021年03月12日 11:57:08  所属分类:PHP
最后更新时间:2021-03-12 12:01:15
付杰
  • ¥ 98.0元
  • 市场价:298.0元
  • ¥ 49.0元
  • 市场价:199.0元
  • ¥ 1980.0元
  • 市场价:2980.0元
  • ¥ 99.9元
  • 市场价:299元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: