PHP使用curl發送get和post請求

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;
}
發佈了32 篇原創文章 · 獲贊 27 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章