因為接觸少,所以我只知道curl只支援get或者post的請求形式,而且網上搜尋一般也都是介紹這兩種。今天在項目中遇到嘞要使用put形式請求的介面,困惑了好久。終於找到瞭解決方案,在這裡分享下。
首先get請求寫法:
$ch = curl_init("http://www.medicool.cn") ;//請求地址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 擷取資料返回
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ; // 在啟用 CURLOPT_RETURNTRANSFER 時候將擷取資料返回
echo $output = curl_exec($ch) ;
curl_close($ch) ;//關閉
然後post請求寫法:
$ch = curl_init();
$header[] = "Content-type:image/jpeg";//定義header,可以加多個
curl_setopt($ch, CURLOPT_URL, "http://medicool.cn"); //定義請求地址
curl_setopt($ch, CURLOPT_POST, 1); //定義提交類型 1:POST ;0:GET
curl_setopt($ch, CURLOPT_HEADER,0); //定義是否顯示狀態頭 1:顯示 ; 0:不顯示
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);//定義header
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//定義是否直接輸出返迴流
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //定義提交的資料
$res = curl_exec($ch);
curl_close($ch);//關閉
最後是put請求
$ch = curl_init();
$header[] = "Content-type:image/jpeg";//定義header,可以加多個
curl_setopt($ch, CURLOPT_URL, "http://medicool.cn"); //定義請求地址
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "put"); //定義請求類型,當然那個提交類型那一句就不需要了
curl_setopt($ch, CURLOPT_HEADER,0); //定義是否顯示狀態頭 1:顯示 ; 0:不顯示
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);//定義header
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//定義是否直接輸出返迴流
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //定義提交的資料
$res = curl_exec($ch);
curl_close($ch);//關閉