1、GET请求
function getData($url, $data = null)
{
$ch = curl_init();
//数据处理,判断是否携带参数
if ($data) {
$url .= '?'.http_build_query($data);
}
//主要参数
curl_setopt($ch, CURLOPT_URL, $url);
//使返回不直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//连接超时(秒)
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
//执行
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
2、POST请求
function postData($url, $data = [], $json = false)
{
$ch = curl_init();
//数据处理及POST参数
if ($json) {
//json编码
$data = json_encode($data);
//设置header
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-type: application/json']);
}else {
$data = http_build_query($data);//常规编码
//不必额外设置header,默认x-www-form-urlencoded
}
//POST请求
curl_setopt($ch, CURLOPT_POST, true);
//组装数据
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
//主要参数
curl_setopt($ch, CURLOPT_URL, $url);
//使返回不直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//连接超时(秒)
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
//执行
$result = curl_exec($ch);
curl_close($ch);
return $result;
}