/**
* curl通用方法,可发送get请求和post请求
* @param $post
* @param $url
* @param string $type
* @param array $header
* @param bool $isUserAgent
* @return bool|mixed|string
*/
function curlResult(url,cookie = '', isUserAgent = true)
{
$user_agent = [
'Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +www.google.com/bot.html)',
'Mozilla/5.0 (compatible; Baiduspider/2.0; +www.baidu.com/search/spid…)',
'Mozilla/5.0 (Linux; U; Android 7.0; zh-CN; SM-G9550 Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/40.0.2214.89 UCBrowser/11.7.0.953 Mobile Safari/537.36',
'Mozilla/5.0 (Linux; U; Android 7.0; zh-cn; STF-AL00 Build/HUAWEISTF-AL00) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 Chrome/37.0.0.0 MQQBrowser/7.9 Mobile Safari/537.36',
'Mozilla/5.0 (Linux; Android 6.0; MX6 Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043508 Safari/537.36 MicroMessenger/6.5.13.1100 NetType/4G Language/zh_CN',
'Mozilla/5.0 (iPhone 84; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.0 MQQBrowser/7.8.0 Mobile/14G60 Safari/8536.25 MttCustomUA/2 QBWebViewType/1 WKType/1',
];
$ch = curl_init();
if($type == 'GET')
{
curl_setopt(url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt(user_agent[array_rand($user_agent, 1)]);
if(!empty($header))
{
curl_setopt(header);
}
if(!empty($cookie))
{
curl_setopt(cookie);
}
ch);
curl_close($ch);
}
elseif($type == 'DEFAULT')
{
$defaults = array(
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_URL => $url,
CURLINFO_HEADER_OUT => true,
CURLOPT_FRESH_CONNECT => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FORBID_REUSE => 1,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 120,
CURLOPT_USERAGENT => user_agent, 1)],
CURLOPT_POSTFIELDS => $post
);
if (!empty($header))
{
header;
}
if (!empty($cookie))
{
cookie;
}
$options = array();
curl_setopt_array(options + $defaults));
ch);
curl_close($ch);
}
elseif($type == 'JSON')
{
$headers = ["Content-Type: application/json","charset=utf-8"];
if($header)
{
headers,$header);
}
$defaults = array(
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_URL => $url,
CURLINFO_HEADER_OUT => true,
CURLOPT_FRESH_CONNECT => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FORBID_REUSE => 1,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 120,
CURLOPT_USERAGENT => user_agent, 1)],
CURLOPT_POSTFIELDS => json_encode((object)$post),
CURLOPT_HTTPHEADER => $headers
);
if (!empty($cookie))
{
cookie;
}
$options = array();
curl_setopt_array(options + $defaults));
ch);
curl_close($ch);
}
else
{
$defaults = array(
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_URL => $url,
CURLINFO_HEADER_OUT => true,
CURLOPT_FRESH_CONNECT => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FORBID_REUSE => 1,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 120,
CURLOPT_USERAGENT => user_agent, 1)],
CURLOPT_POSTFIELDS => http_build_query($post)
);
if (!empty($header))
{
header;
}
if (!empty($cookie))
{
cookie;
}
$options = array();
curl_setopt_array(options + $defaults));
ch);
curl_close($ch);
}
result,true);
return $result;
}