• curl请求


    /**
     * @param string $url 请求地址
     * @param array|string $params 请求参数
     * @param string $method 请求方法
     * @param array $header 请求头
     * @param bool $multi post 数据是否进行url encode
     * @param bool $httpCode 是否返回http code
     * @return mixed
     * @throws Exception
     */
    function curlHttp($url, $params, $method = 'GET', $header = [], $multi = false, $httpCode = false)
    {
        $opts = [
            CURLOPT_TIMEOUT        => 10,
            CURLOPT_RETURNTRANSFER => 1,
            CURLOPT_SSL_VERIFYPEER => false, //不做证书校验,部署在linux环境下改为true
            CURLOPT_HTTPHEADER     => $header
        ];
    
        //根据请求类型设置特定参数
        switch(strtoupper($method)) {
            case 'GET':
                if(!empty($params)){
                    $url .= '?' . http_build_query($params);
                }
                $opts[CURLOPT_URL] = $url;
                break;
            case 'POST':  //判断是否传输文件
                $params = $multi ? $params : http_build_query($params);
                $opts[CURLOPT_URL] = $url;
                $opts[CURLOPT_POST] = 1;
                $opts[CURLOPT_POSTFIELDS] = $params;
                break;
            default:
                throw new Exception('不支持的请求方式!');
        }
        /* 初始化并执行curl请求 */
        $ch = curl_init();
    
        curl_setopt_array($ch, $opts);
    
        $data  = curl_exec($ch);
        $httpStatus = curl_getinfo($ch, CURLINFO_HTTP_CODE); //HTTPSTAT码
    
        if($errorCode = curl_errno($ch)){
            $data = json_encode(['code' => 1,'msg' => curl_error($ch)]);
        }
        curl_close($ch);
    
        if($httpCode){
            $result = [
                'data' => $data,
                'httpCode' => $httpStatus
            ];
            return $result;
        }
    
        return $data;
    }


  • 相关阅读:
    中兴ZTE ZXV10 H618B超级密码
    星际1.08下载绝对能玩
    cs脚本
    关于JIRA4.3.3破解的问题,为什么我的就可以破解成功
    Jquery DataTables学习笔记(一)
    如何利用System.Net.Mail类发送EMAIL
    IE鼠标右键查看源文件失效解决办法
    ServU FTP Server远程/本地提升权限
    Laravel的homestead安装
    编程总结3
  • 原文地址:https://www.cnblogs.com/yangjiayu/p/11157506.html
Copyright © 2020-2023  润新知