php curl get post请求

php curl get请求

private function doGet($url)
{
    //初始化
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL,$url);
    // 执行后不直接打印出来
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HEADER, false);
    // 跳过证书检查
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    // 不从证书中检查SSL加密算法是否存在
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); //强制协议为1.0
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect'=>'')); //头部要送出'Expect: '
    curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 ); //强制使用IPV4协议解析域名

    //执行并获取HTML文档内容
    $output = curl_exec($ch);

    //释放curl句柄
    curl_close($ch);

    return $output;
}

php curl get请求

 /**
     * 请求
     * @param $Url
     * @param $Params
     * @param string $Method
     * @return int
     */
    private function payback($Url, $Params, $Method='post'){
        file_put_contents("alog.txt",date('Y/m/d H:i:s',time()).':'.$Url.'/'.$Params, FILE_APPEND);
        $rs = 0;
        $Curl = curl_init();//初始化curl

        if ('get' == $Method){//以GET方式发送请求
            curl_setopt($Curl, CURLOPT_URL, "$Url?$Params");
        }else{//以POST方式发送请求
            curl_setopt($Curl, CURLOPT_URL, trim($Url));
            curl_setopt($Curl, CURLOPT_POST, 1);//post提交方式
            curl_setopt($Curl, CURLOPT_POSTFIELDS, $Params);//设置传送的参数
        }
        curl_setopt($Curl, CURLOPT_HEADER, false);//设置header,输出结果时会打印出来
        curl_setopt($Curl, CURLOPT_RETURNTRANSFER, true);//要求结果为字符串且输出到屏幕上
        //curl_setopt($Curl, CURLOPT_CONNECTTIMEOUT, 3);//设置等待时间
//        curl_setopt($Curl,CURLINFO_HEADER_OUT,true);
        curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts
        curl_setopt($Curl, CURLOPT_SSL_VERIFYHOST, FALSE);

        $Res = curl_exec($Curl);//运行curl

        file_put_contents("alog.txt", date('Y/m/d H:i:s', time()) . ':rst' . $Res, FILE_APPEND);

        debug($Url);
        debug($Params);
        debug($Res);
        $ss = curl_getinfo($Curl);
        debug($ss);

        $err = curl_error($Curl);
        debug($err);

        $err = curl_errno($Curl);
        debug($err);

        if ( $Res == 'success') {
            $rs = 1;
        } else {
            $rs = 0;
        }
        curl_close($Curl);//关闭curl

        return $rs;
    }
/**
 * 发送post请求.
 *
 * @param $url 地址
 * @param $args 参数
 * @param $timeout 过期时间 秒
 *
 * @author yzm
 *
 * @return mixed
 */
function http_post($url, $args, $timeout = 30)
{
    $_header = [
//       'Content-Type: application/json; charset=utf-8',
//        'Content-Length: ' . strlen($args)
    ];

    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $_header);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
    $ret = curl_exec($ch);
    curl_close($ch);

    return $ret;
}

 

参考:https://www.php.net/manual/zh/function.curl-setopt.php

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值