第一種,POST 和 GET 合并
function http_curl($url, $type = 'get', $data = ''){ $cl = curl_init(); //初始化 curl_setopt($cl, CURLOPT_URL, $url); //設定 cURL 傳輸選項 curl_setopt($cl, CURLOPT_RETURNTRANSFER, 1); // 將curl_exec()獲取的資訊以字串回傳,而不是直接輸出,
curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cl, CURLOPT_SSL_VERIFYHOST, false);
if($type == 'post'){ curl_setopt($cl, CURLOPT_POST, 1); //發送 POST 請求,型別為:application/x-www-form-urlencoded curl_setopt($cl, CURLOPT_POSTFIELDS, $data); } $output = curl_exec($cl); //執行 cURL 會話 curl_close($cl); return $output; }
第二種 POST 和 GET分開
POST
$url = "http://localhost/web_services.php"; $post_data = array ("username" => "bob","key" => "12345"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // post資料 curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
// post的變數 curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); $output = curl_exec($ch); curl_close($ch); //列印獲得的資料 print_r($output);
GET
//初始化 $ch = curl_init(); //設定選項,包括URL curl_setopt($ch, CURLOPT_URL, "http://www.jb51.net"); 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); //執行并獲取HTML檔案內容 $output = curl_exec($ch); //釋放curl句柄 curl_close($ch); //列印獲得的資料 print_r($output);
以上方式獲取到的資料是json格式的
使用 json_decode($output,true) 可決議為陣列;使用 json_decode($output) 可決議為物件
引數說明:
$url :要請求的url地址,如果是get方式請求,可以把引數直接加到url后面
$type:請求方式
$data:post方式請求時攜帶的引數
curl_init() 初始化一個cURL會話
curl_setopt() 設定一個cURL傳輸選項
curl_exec() 執行一個cURL會話
curl_close() 關閉一個cURL會話
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/84977.html
標籤:PHP
下一篇:TP SQL統計查詢語法
