1 /**
2 * http-GET
3 *
4 */
5 $url = "https://www.baidu.com";
6 $params = [
7 "uid" => $_REQUEST["uid"],
8 "token" => $_REQUEST["token"],
9 ];
10 $result = file_get_contents($url);
11
12 function curl_file_get_contents($url){
13 $ch = curl_init();
14 curl_setopt($ch, CURLOPT_URL, $url);
15 curl_setopt($ch, CURLOPT_TIMEOUT, 5);
16 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
17 $res = curl_exec($ch);
18 curl_close($ch);
19 return $res;
20 }
21 $result = curl_file_get_contents($url);
22
23 /**
24 * http-POST
25 *
26 */
27 function http_post($url, $data) {
28 $postdata = http_build_query($data);
29 $options = [
30 'http' => [
31 'method' => 'POST',
32 'header' => 'Content-type:application/x-www-form-urlencoded',
33 'content' => $postdata,
34 'timeout' => 15 * 60
35 ]
36 ];
37 $context = stream_context_create($options);
38 $result = file_get_contents($url, false, $context);
39 return $result;
40 }
41
42 function http_post2($url, $data) {
43 $ch = curl_init();
44 curl_setopt($ch, CURLOPT_POST, 1);
45 curl_setopt($ch, CURLOPT_URL, $url);
46 curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
47 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
48 curl_setopt($ch, CURLOPT_HTTPHEADER, array(
49 'Content-Type: application/json; charset=utf-8',
50 'Content-Length:' . strlen($data))
51 );
52 $return_content = curl_exec($ch);
53 curl_close($ch);
54 return $return_content;
55 }
56
57
58 $head = [];
59 $head[] = 'Timestamp:'.'1600000000';
60 $head[] = 'Nonce:'.'Nonce';
61 $head[] = 'Signature:'.'Signature';
62 $head[] = 'Content-Type:text/plain;charset=utf-8';
63 // $head[] = 'Content-Type: application/json';
64 /**自定义header头信息 */
65 function http_post3($url, $data, $header)
66 {
67 $curl = curl_init();
68 curl_setopt($curl, CURLOPT_URL, $url);
69 curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
70 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
71 curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
72 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转
73 curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer
74 curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
75 curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
76 curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
77 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
78 curl_setopt($curl, CURLOPT_HTTPHEADER, $header);//设置自定义header头信息
79 $res = curl_exec($curl); // 执行操作
80 if (curl_errno($curl)) {
81 echo 'Errno'.curl_error($curl);//捕抓异常
82 }
83 curl_close($curl); // 关闭CURL会话
84 return $res; // 返回数据,json格式
85 }
86
87 function http_post4($url, $data, $header){
88 $postdata = http_build_query($data);
89 $opts = array('http' =>
90 array(
91 'method' => 'POST',
92 'header' => $header,
93 'content' => $postdata,
94 'timeout' => 30
95 )
96 );
97 $context = stream_context_create($opts);
98 $result = file_get_contents($url, false, $context);
99 return $result;
100 }
101
102 function http_post5($url, $data, $headers){
103 $ch = curl_init();
104 curl_setopt($ch,CURLOPT_URL,$url);
105 if(!empty($headers)){
106 curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
107 }
108 curl_setopt($ch, CURLOPT_POST, 1);
109 /**http_build_query 吧请求的数据转换成 k=v&k2=v2 发送请求*/
110 curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
111 curl_setopt($ch, CURLOPT_TIMEOUT, 5);
112 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
113 curl_setopt($ch, CURLOPT_HEADER,0);//如果想把一个头包含在输出中,设置这个选项为一个非零值。
114 curl_setopt($ch, CURLINFO_HEADER_OUT,1);
115 $json = curl_exec($ch);
116 curl_close($ch);
117 return $json;
118 }
1 /**其他*****/
2 /**
3 * 获取url
4 */
5 function get_app_url(){
6 $scheme = $_SERVER['REQUEST_SCHEME']; //协议
7 $domain = $_SERVER['HTTP_HOST']; //域名/主机
8 $requestUri = $_SERVER['REQUEST_URI']; //请求参数
9 $getUrl = $scheme . "://" . $domain . $requestUri;
10 return $getUrl;
11 }
12
13 /**
14 * 跳转指定url
15 *
16 */
17 header("Location:https://www.baidu.com");
18
19 /**
20 * 是否支持https判断
21 */
22 function is_https()
23 {
24 if (!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off')
25 {
26 return TRUE;
27 }
28 elseif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https')
29 {
30 return TRUE;
31 }
32 elseif (!empty($_SERVER['HTTP_FRONT_END_HTTPS']) && strtolower($_SERVER['HTTP_FRONT_END_HTTPS']) !== 'off')
33 {
34 return TRUE;
35 }
36 return FALSE;
37 }