欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php之curl实现http与https请求的方法,phpcurlhttps请求_PHP教程

程序员文章站 2022-05-07 11:23:03
...

php之curl实现http与https请求的方法,phpcurlhttps请求

本文实例讲述了php之curl实现http与https请求的方法,分享给大家供大家参考。具体如下:

通常来说,php的curl函数组可以帮助我们把机器伪装成人的行为来抓取网站,下面来分享两个例子,一个是访问http网页,一个访问https网页,一起来看一下。

每次要使用curl的时候,总要查一堆资料。
现在将常用的几句保存下来,省的每次都去谷歌。

常规curl请求:

复制代码 代码如下:
$url = 'http://www.bkjia.com';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($curl);
curl_close($curl);
var_dump($data);

使用curl请求HTTPS:

复制代码 代码如下:
$url = 'https://www.jb51.net';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//这个是重点。
$data = curl_exec($curl);
curl_close($curl);
var_dump($data);

注意

当请求https的数据时,会要求证书,这时候,加上下面这两个参数,规避ssl的证书检查

复制代码 代码如下:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

希望本文所述对大家的PHP程序设计有所帮助。

PHP中用CURL提交POST数据到https网站的问题

错误提示是不能支持https的协议。
*.com/...-https 救了我啊,谢天谢地。
说是 https 前面多了空格
 

对于https协议的网站,可以用php 的curl来模拟get与post,可以得到返回值?

可以。
CURLOPT_PROTOCOLS
CURLPROTO_* 的位域指。如果被启用,位域值会限定libcurl在传输过程中有哪些可使用的协议。这将允许你在编译libcurl时支持众多协议,但是限制只是用它们中被允许使用的一个子集。默认libcurl将会使用全部它支持的协议。参见 CURLOPT_REDIR_PROTOCOLS .
可用的协议选项为:CURLPROTO_HTTP、CURLPROTO_HTTPS、CURLPROTO_FTP、CURLPROTO_FTPS、CURLPROTO_SCP、CURLPROTO_SFTP、CURLPROTO_TELNET、CURLPROTO_LDAP、CURLPROTO_LDAPS、CURLPROTO_DICT、CURLPROTO_FILE、CURLPROTO_TFTP、CURLPROTO_ALL

对了,可定能得到返回值
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/897689.htmlTechArticlephp之curl实现http与https请求的方法,phpcurlhttps请求 本文实例讲述了php之curl实现http与https请求的方法,分享给大家供大家参考。具体如下:...