超好用的curl函式(PHP版本)

2021-10-22 22:11:33 字數 3154 閱讀 7037

分享自己工作中總結積累的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...