php curl 模拟get请求 并设置header

Posted 不染不念不畏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php curl 模拟get请求 并设置header相关的知识,希望对你有一定的参考价值。

1. 模拟get请求文件 test_get.php

<?php
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
function http_get($url)
{
    $headers[] = "Content-type: application/x-www-form-urlencoded";
    $headers[] = "Zoomkey-Auth-Token: 9CD0F0F60AFDF00";
    $curl = curl_init(); // 启动一个CURL会话
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_HEADER, 0);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);  // 从证书中检查SSL加密算法是否存在
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    $tmpInfo = curl_exec($curl);     
    //关闭URL请求
    curl_close($curl);
    return $tmpInfo;   
}
$url = ‘http://www.test.com/test_get_info.php?name=123‘;
$resu = http_get($url);
echo $resu;

 

2. 测试文件 test_get_info.php

<?php
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
$name = $_GET[‘name‘];
if($name)
{
    // echo "{"name":$name,"s":0}";
    // getallheaders()函数 php4 php5支持   apache支持 iis和nginx不支持
    foreach (getallheaders() as $name => $value) {
        echo "$name: $value ";
    }
}else
{
    echo "{"s":-3}";
}

 

 

以上是关于php curl 模拟get请求 并设置header的主要内容,如果未能解决你的问题,请参考以下文章

php curl请求接口并获取数据

php 中使用cURL发送get/post请求,上传图片,批处理

PHP通过CURL模拟登录并获取数据

PHP模拟登录并获取数据

转:PHP中的使用curl发送请求(GET请求和POST请求)

php curl如何直接转发当前php接收的headers?get请求如何直接转发get参数?post请求如何直接转发post参数?