// +---------------------------------------------------------------------- // 应用公共文件 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; }