1.cURL介紹
?????? cURL 是一個利用URL語法規(guī)定來傳輸文件和數(shù)據(jù)的工具,支持很多協(xié)議,如HTTP、FTP、TELNET等。
2.基本結(jié)構(gòu)
在學(xué)習(xí)更為復(fù)雜的功能之前,先來看一下在PHP中建立cURL請求的基本步驟:
(1)初始化
curl_init()
(2)設(shè)置變量
curl_setopt() 。最為重要,一切玄妙均在此。有一長串cURL參數(shù)可供設(shè)置,它們能指定URL請求的各個細(xì)節(jié)。要一次性全部看完并理解可能比較困難,所以今天我們只試一下那些更常用也更有用的選項。
(3)執(zhí)行并獲取結(jié)果
curl_exec()
(4)釋放cURL句柄
curl_close()
3.cURL實現(xiàn)Post
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$url);?? //設(shè)置請求地址
curl_setopt($curl,CURLOPT_POST,1);????? //設(shè)置請求方式為post,默認(rèn)為get
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);?? //返回獲取的輸出的文本流
curl_setopt($curl,CURLOPT_VERBOSE,1);??? //選項設(shè)置為非零值,curl報告每一件意外的事情
curl_setopt($curl,CURLOPT_HTTPHEADER,$header);? //設(shè)置http頭部
curl_setopt($curl,CURLOPT_POSTFIELDS,http_build_query($data)); //要傳遞的數(shù)據(jù)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,FALSE);//https請求 不驗證證書和hosts
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,FALSE);//從證書中檢查SSL加密算法是否存在
$result=curl_exec($curl);
curl_close($curl);