天天看點

php之curl實作http與https請求的方法

這篇文章主要介紹了php之curl實作http與https請求的方法,分别講述了PHP通路http網頁與通路https網頁的執行個體,以及相關的注意事項,需要的朋友可以參考下

本文執行個體講述了php之curl實作http與https請求的方法,分享給大家供大家參考。具體如下:

通常來說,php的curl函數組可以幫助我們把機器僞裝成人的行為來抓取網站,下面來分享兩個例子,一個是通路http網頁,一個通路https網頁,一起來看一下。

每次要使用curl的時候,總要查一堆資料。

現在将常用的幾句儲存下來,省的每次都去谷歌。

正常curl請求:

$url = ‘http://www.jb51.net’;

c u r l = c u r l i n i t ( ) ; c u r l s e t o p t ( curl = curl_init(); curl_setopt( curl=curli​nit();curls​etopt(curl, CURLOPT_URL, u r l ) ; c u r l s e t o p t ( url); curl_setopt( url);curls​etopt(curl, CURLOPT_HEADER, 1);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

d a t a = c u r l e x e c ( data = curl_exec( data=curle​xec(curl);

curl_close( c u r l ) ; v a r d u m p ( curl); var_dump( curl);vard​ump(data);

使用curl請求HTTPS:

$url = ‘https://www.jb51.net’;

c u r l = c u r l i n i t ( ) ; c u r l s e t o p t ( curl = curl_init(); curl_setopt( curl=curli​nit();curls​etopt(curl, CURLOPT_URL, u r l ) ; c u r l s e t o p t ( url); curl_setopt( url);curls​etopt(curl, CURLOPT_HEADER, 1);

curl_setopt( c u r l , C U R L O P T R E T U R N T R A N S F E R , 1 ) ; c u r l s e t o p t ( curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt( curl,CURLOPTR​ETURNTRANSFER,1);curls​etopt(curl, CURLOPT_SSL_VERIFYPEER, false);//這個是重點。

d a t a = c u r l e x e c ( data = curl_exec( data=curle​xec(curl);

curl_close( c u r l ) ; v a r d u m p ( curl); var_dump( curl);vard​ump(data);

注意

當請求https的資料時,會要求證書,這時候,加上下面這兩個參數,規避ssl的證書檢查

curl_setopt( c h , C U R L O P T S S L V E R I F Y P E E R , F A L S E ) ; / / h t t p s 請 求 不 驗 證 證 書 和 h o s t s c u r l s e t o p t ( ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https請求 不驗證證書和hosts curl_setopt( ch,CURLOPTS​SLV​ERIFYPEER,FALSE);//https請求不驗證證書和hostscurls​etopt(ch, CURLOPT_SSL_VERIFYHOST, FALSE);