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;
}