分享自己工作中總結積累的curl函式,廢話不多說,直接上乾貨。
1.發起http請求的curl函式,post和get都ok。
/**
* 傳送curl請求
* @param $url ''
* @param bool $is_post true
* @param array $data ['email' => '***@***.com', 'password' => '***']
* @param bool $ssl false
* @param bool $is_json false
* @param int $time_out 0
* @return array
* @author: 夜雨聞鈴
)// 將標頭檔案的資訊作為資料流輸出
curl_setopt
($curl
,curlopt_header
,false);
// 請求結果以字串返回,不直接輸出
curl_setopt
($curl
,curlopt_returntransfer
,true);
// 禁止 curl 驗證對等證書
curl_setopt
($curl
,curlopt_ssl_verifypeer
,false);
// 設定頭資訊
//identity", "deflate", "gzip「,三種編碼方式,如果設定為空字串,則表示支援三種編碼方式。當出現亂碼時,可設定此字串
curl_setopt
($curl
,curlopt_encoding,''
);//設定http版本。http1.1是主流的http版本
//如果curl版本,大於7.28.1,得是2才行,7.0版本的php自帶的curl版本為7.40.1.使用php7以上的,就能確保沒問題
$ssl
=$ssl?2
:0;// 檢查伺服器ssl證書中是否存在乙個公用名
curl_setopt
($curl
,curlopt_ssl_verifyhost
,$ssl);
//連線對方主機時的最長等待時間。設定為10秒時,如果對方伺服器10秒內沒有響應,則主動斷開鏈結。為0則,不限**務器響應時間
curl_setopt
($curl
,curlopt_connecttimeout
,$time_out);
//curlopt_timeout:整個curl函式執行過程的最長等待時間,也就是說,這個時間是包含連線等待時間的
curl_setopt
($curl
,curlopt_timeout,0
);if(
$is_post
)else
}else
// 執行請求
$response
=curl_exec
($curl);
$content_type
=curl_getinfo
($curl
,curlinfo_content_type);
//返回的content_type型別
//返回的http狀態碼if(
curl_errno
($curl))
else
curl_close
($curl);
return
$result
;}
2.用curl拉取檔案,用get的方式拉取檔案。 url等於 這種型別的。用get形式請求。
function
getfilecurltwo
($url
)
3.檔案拉取用curl,用post請求,data主要是帶簽名,提供安全性
function
getfilecurl
($url
,$data=[
])
例子,幫助大家理解一下
public
function
getmt5file()
//私鑰
$private_key
=config
('scan_private_key');
$find_url
=config
('scan_url').
'/api/adjusted_bonus'
;$data
=array
('type'
=>1,
'bonus_date'
=>
date
('y-m-d'),
'timestamp'
=>
time()
,);//加密生成簽名
$sign
=encryption
($data
,$private_key);
$data
['sign']=
$sign
;//先查詢檔案是否生成
$find_res
=getfilecurl
($find_url
,$data);
if($find_res)}
}
php 方便好用的函式
在寫 的時候經常會遇見各種各樣的問題,感覺需要寫函式解決,其實php中已經給出指定函式了。這些函式就需要我們日常去了解記憶。1.獲取指點年份中某月的天數 d cal days in month cal gregorian,2,2016 echo 2016 年 2 月有 d 天。2.在乙個二維陣列中獲...
cURL常用的幾個PHP函式
curl是乙個功能強大的php庫,我們可以使用php的curl採用get post等方式傳送請求,獲取網頁內容以及取乙個xml檔案並把其匯入資料庫等等。本文中收集了幾種常用的php的curl函式,以備使用。主要的有幾個php函式用於 get,post,http驗證,302重定向,設定curl的 在w...
詳解php的curl幾個函式
關於php的curl一系列函式,這裡解釋一下它們的作用。在html中,我們可以通過form設定http的post和get提交,但假如我們獲取的資料不是從html中來的,而是php指令碼主動向其他伺服器提交呢?這個時候,我們應該怎麼實現post和get提交資料呢?答案就是php的curl函式或者str...