Contact Icon zydown.com
公告 :加入本站终身vip会员用户,下载本站资源更优惠,我们不断更新中………

当前位置:首页>编程>php>php编程post,get请求curl封装

php编程post,get请求curl封装

今天分享几个用php编程封装好的post,get封装请求;直接拿来可以使用的curl请求封装

post_curl提交数据请求

function post_curl($url, $params=[], $headers=[],$cookie){
        $httpInfo = array();
        $ch = curl_init();
        
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt($ch, CURLOPT_COOKIE, $cookie);
        curl_setopt( $ch, CURLOPT_USERAGENT , 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 );
        curl_setopt( $ch, CURLOPT_TIMEOUT , 30);
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
        curl_setopt( $ch , CURLOPT_POST , true );
        curl_setopt( $ch , CURLOPT_POSTFIELDS , http_build_query($params));
        curl_setopt( $ch , CURLOPT_URL , $url );
        
    
        $response = curl_exec( $ch );
        if ($response === FALSE) {
            return false;
        }
        
        curl_close( $ch );
        return $response;
    }

代码中的$url 是需要请求的网址,$params是post提交的数据实例:

$params=[
'appid'=>'1232132132',
'key'=>'ffghfg4h545dfh12fgdh',//前面是提交的参数,后面是需要提交的数据
];

$headers=[]的用法跟$params一致 ,post、get请求一样。

$cookie的实例:

function getCookie(){
        $url = get_curl('需要获取cookies的网站域名', [] , 1);
        list($header, $body) = explode("\r\n\r\n", $url);
        $matches = explode("\r\n",$header);
        preg_match("/set\-cookie:([^\r\n]*)/i", $header, $matches);
        $matches = explode(" ",$matches[1]);
        return $matches[1];
}

用法实例:

$cookie = getCookie();//取cookie

get_curl请求

用法跟post一致

function get_curl($url, $params=[], $headers=[],$cookie = ''){
        $ch = curl_init();
        curl_setopt( $ch, CURLOPT_HEADER, 1);
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt( $ch, CURLOPT_USERAGENT , 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 );
        curl_setopt( $ch, CURLOPT_TIMEOUT , 30);
        curl_setopt($ch, CURLOPT_COOKIE, $cookie);
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true);
        curl_setopt( $ch, CURLOPT_NOBODY , true);
        curl_setopt( $ch, CURLOPT_POST , false );
        curl_setopt( $ch, CURLOPT_POSTFIELDS , http_build_query($params));
        curl_setopt( $ch, CURLOPT_URL , $url );
        $response = curl_exec( $ch );
        curl_close( $ch );
        return $response;
    }

 

    声明:本站提供的一切软件、教程和内容信息都来自网络收集整理,仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,版权争议与本站无关。用户必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

    给TA打赏
    共{{data.count}}人
    人已打赏

    相关文章

    php

    怎么用php代码实现 ASCII文章伪原创

    2024-1-22 19:53:59

    php

    php编程:怎么用php域名授权网站?

    2024-3-3 16:15:23

    {{yiyan[0].hitokoto}}
      暂无讨论,说说你的看法吧
    个人中心
    购物车
    优惠劵
    今日签到
    有新私信 私信列表
    搜索