php curl读取头,php curl 获取请求头与DNS解析

这里是具体的curl请求函数,已将对应的需求作为参数编写

/**

* 发起请求并获取返回值

* @param string $url

* @param string $method 请求方式

* @param array|string $requestData 请求数据

* @param array $headers 请求头 数组

* @param string $returnFormat 返回数据当 1.默认data,返回响应体 2.header,返回响应头信息

* @return string*/publicstaticfunction request($url, $method =‘GET‘, $requestData =null, $headers =null, $returnFormat =‘data‘) {if(is_array($requestData)) {

$requestData=http_build_query($requestData);

}if(‘GET‘== strtoupper($method) &&$requestData) {

$url= $url.‘?‘.urlencode($requestData);

}

$headerFormat=false;if($returnFormat ==‘header‘){

$headerFormat=true;

}

$ci=curl_init();//设置解析地址curl_setopt($ci, CURLOPT_RESOLVE, ["api.butian.net:443:101.227.27.122"]);//302的也可以获取curl_setopt($ci, CURLOPT_FOLLOWLOCATION, true);

curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);

curl_setopt($ci, CURLOPT_URL, $url);

curl_setopt($ci, CURLOPT_RETURNTRANSFER,true);//不直接输出curl_setopt($ci, CURLOPT_HEADER, $headerFormat);//启用时会将头文件的信息作为数据流输出curl_setopt($ci, CURLOPT_AUTOREFERER, $headerFormat);//当根据Location:重定向时,自动设置header中的Referer:信息curl_setopt($ci, CURLOPT_USERAGENT, ‘FO UA V1.0‘);

curl_setopt($ci, CURLINFO_HEADER_OUT,true);//TRUE 时追踪句柄的请求字符串,从 PHP 5.1.3 开始可用。这个很关键,就是允许你查看请求headercurl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 60);

curl_setopt($ci, CURLOPT_TIMEOUT, (60));

curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, FALSE);//是否验证ssl证书(http)curl_setopt($ci, CURLOPT_SSL_VERIFYHOST, FALSE);//是否验证证书使用于此主机(http)if($headers) {

curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);

}if(‘POST‘==strtoupper($method)) {

curl_setopt($ci, CURLOPT_POST,true);

curl_setopt($ci, CURLOPT_POSTFIELDS, $requestData);

}if(‘PUT‘==strtoupper($method)){

curl_setopt ($ci, CURLOPT_CUSTOMREQUEST,"PUT");

curl_setopt($ci, CURLOPT_POSTFIELDS, $requestData);

}

$ret=curl_exec($ci);//$requestHeader = curl_getinfo($ci, CURLINFO_HEADER_OUT);//查看请求头信息//note_log($requestHeader);//return $requestHeader;$httpCode= curl_getinfo($ci,CURLINFO_HTTP_CODE);//http错误码//判断http返回的错误码if ($httpCode != 200) {

$err_str="HTTP ERR NUM:".$httpCode ."\n";

die($err_str);

}

curl_close($ci);return$ret;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值