/**
* 发送请求
* author: xiaochuan
* @param string $url 请求地址
* @param array $header header数据
* @param array $data POST的数据
* @return string
*/
function send_curl($url, $header, $data){
//开启一个curl会话
$ch = curl_init();
if(substr($url,0,5)=='https'){
// 跳过证书检查
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// 从证书中检查SSL加密算法是否存在
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true);
}
//要求结果保存到字符串中还是直接输出到屏幕上(false直接输出,相当于自动加echo)
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//请求地址
curl_setopt($ch, CURLOPT_URL, $url);
//header头数据传递【key+value】
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
//设置为Post请求,默认是GET 如果是GET请求可以删掉这里,或设置为0或false
curl_setopt($ch, CURLOPT_POST, true);
//传递数据【key+value】
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
//运行cURL,正式请求。
$res = curl_exec($ch);
//返回一个包含当前会话错误信息的字符串
if($error=curl_error($ch)){
die($error);
}
//关闭curl会话
curl_close($ch);
//返回请求到的数据
return $res;
}如何获取别人传过来的Header数据呢:
如:
$value1 = $_SERVER['HTTP_别人传过来的KEY'];
接收页:
<?php
//接口入口文件
$data = get_header_data();//获取Header数据
print_r($data);
/**
* 接收Header数据
* author:xiaochuan
* @access public
* @param
* @return
*/
function get_header_data(){
$data = [];
foreach($_SERVER as $k=>$v){
if(substr($, 0, 5)==='HTTP_'){
$k = substr($k, 5);
$k = str_replace('_', ' ', $k);
$k = str_replace(' ', '-', $k);
$k = strtolower($);
$data[$k] = $v;
}
}
return $data;
}
}
转载请注明来源地址:小川编程 » https://www.youhutong.com/index.php/article/index/63.html
1、本站发布的内容仅限用于学习和研究目的.请勿用于商业或非法用途,下载后请24小时内删除。
2、本站所有内容均不能保证其完整性,不能接受请勿购买或下载,如需完整程序,请去其官方购买正版使用
3、本站联系方式Email:admin@youhutong.com ,收到邮件会第一时间处理。
4、如侵犯到任何版权问题,请立即告知本站(立即在线告知),本站将及时删除并致以最深的歉意
