程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php之curl實現http與https請求的方法,phpcurlhttps請求

php之curl實現http與https請求的方法,phpcurlhttps請求

編輯:關於PHP編程

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的協議。
stackoverflow.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

對了,可定能得到返回值
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved