// +---------------------------------------------------------------------- // 应用公共文件 function pre($content, $is_die = true) { header('Content-type: text/html; charset=utf-8'); echo '
' . print_r($content, true);
    $is_die && die();
}

/**
 * php发送http请求
 * @param array $params 相关请求参数
 * @param booble $is_json  数据格式,默认false为数组,true为json
 * @return string
 */
function _curl(array $params,$is_json=false )
{
    $_data = $params['data'] ?? null;
    $url = $params['url'];
    $defaults = [
        CURLOPT_HEADER => 0,
        CURLOPT_URL => $params['url'],
        CURLOPT_FRESH_CONNECT => 1,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_FORBID_REUSE => 1,
        CURLOPT_TIMEOUT => 60,
        CURLOPT_SSL_VERIFYHOST=>2,
        CURLOPT_SSL_VERIFYPEER=>0,
    ];
    switch ($params['method'])
    {
        case 'post':
            $defaults[CURLOPT_CUSTOMREQUEST] = "POST";
            break;
        case 'get':
            $defaults[CURLOPT_CUSTOMREQUEST] = "GET";
            break;
        case 'put':
            $defaults[CURLOPT_CUSTOMREQUEST] = "PUT";
            break;
        case 'delete':
            $defaults[CURLOPT_CUSTOMREQUEST] = "DELETE";
            break;
    }
    if ($_data && $params['method']!='get') {
        if($is_json){
            $defaults[CURLOPT_POSTFIELDS] = json_encode($_data);
            $defaults[CURLOPT_HTTPHEADER] = [
                'Content-Type: application/json',
                'Content-Length: ' . strlen(json_encode($_data))
            ];
        }else{
            $defaults[CURLOPT_POSTFIELDS] = $_data;
        }
    }elseif($params['method']=='get'){
        if(is_array($_data)){
            $param = '';
            foreach ($_data as $k=>$v){
                $param .= $k."=".$v."&";
            }
            $param = rtrim($param ,"&");
            if(!strpos($url,"?")){
                $url .= "?".$param;
            }else{
                $url .= "&".$param;
            }
        }
        $defaults[CURLOPT_URL] = $url;
    }


    $ch = curl_init();
    curl_setopt_array($ch, ($defaults));

    $result = curl_exec($ch);
    curl_close($ch);

    return $result;
}