天天看点

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);