PHP如何用curl發送GET和POST請求
導語:PHP如何使用curl發送GET和POST請求,具體詳情請閱讀下面代碼,更多詳情請關注考試網。
使用CURL發送請求的基本流程
使用CURL的PHP擴展完成一個HTTP請求的發送一般有以下幾個步驟:
1.初始化連接句柄;
2.設置CURL選項;
3.執行並獲取結果;
4.釋放VURL連接句柄。
下面的程序片段是使用CURL發送HTTP的典型過程
// 1. 初始化
$ch = curl_init();
// 2. 設置選項,包括URL
curl_setopt($ch,CURLOPT_URL,"");
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_HEADER,0);
// 3. 執行並獲取HTML文檔內容
$output = curl_exec($ch);
if($output === FALSE ){
echo "CURL Error:"_error($ch);
}
// 4. 釋放curl句柄
curl_close($ch);
上述代碼中使用到了四個函數
curl_init() 和 curl_close() 分別是初始化CURL連接和關閉CURL連接,都比較簡單。
curl_exec() 執行CURL請求,如果沒有錯誤發生,該函數的返回是對應URL返回的'數據,以字符串表示滿意;如果發生錯誤,該函數返回 FALSE。需要注意的是,判斷輸出是否爲FALSE用的是全等號,這是爲了區分返回空串和出錯的情況。
CURL函數庫裏最重要的函數是curl_setopt(),它可以通過設定CURL函數庫定義的選項來定製HTTP請求。上述代碼片段中使用了三個重要的選項:
①CURLOPT_URL 指定請求的URL;
②CURLOPT_RETURNTRANSFER 設置爲1表示稍後執行的curl_exec函數的返回是URL的返回字符串,而不是把返回字符串定向到標準輸出並返回TRUE;
③CURLLOPT_HEADER設置爲0表示不返回HTTP頭部信息。
CURL的選項還有很多,可以到PHP的網站()上查看CURL支持的所有選項列表。
獲取CURL請求的輸出信息
在curl_exec()函數執行之後,可以使用curl_getinfo()函數獲取CURL請求輸出的相關信息,示例代碼如下:
curl_exec($ch);
$info = curl_getinfo($sh);
echo 獲取 .$info[url].耗時.$info[total_time].秒;
上述代碼中curl_getinfo返回的是一個關聯數組,包含以下數據:
url:網絡地址。
content_type:內容編碼。
http_code:HTTP狀態碼。
header_size:header的大小。
request_size:請求的大小。
filetime:文件創建的時間。
ssl_verify_result:SSL驗證結果。
redirect_count:跳轉計數。
total_time:總耗時。
namelookup_time:DNS查詢耗時。
connect_time:等待連接耗時。
pretransfer_time:傳輸前準備耗時。
size_uplpad:上傳數據的大小。
size_download:下載數據的大小。
speed_download:下載速度。
speed_upload:上傳速度。
download_content_length:下載內容的長度。
upload_content_length:上傳內容的長度。
starttransfer_time:開始傳輸的時間表。
redirect_time:重定向耗時。
curl_getinfo()函數還有一個可選擇參數$opt,通過這個參數可以設置一些常量,對應到上術這個字段,如果設置了第二個參數,那麼返回的只有指定的信息。例如設置$opt爲CURLINFO_TOTAL_TIME,則curl_getinfo()函數只返回total_time,即總傳輸消耗的時間,在只需要關注某些傳輸信息時,設置$opt參數很有意義。
使用CURL發送GET請求
如何使用CURL來發送GET請求,發送GET請求的關鍵是拼裝格式正確的URL。請求地址和GET數據由一個“?”分割,然後GET變量的名稱和值用“=”分隔,各個GET名稱和值由“&”連接。PHP爲我們提
相關文章
-
PHP如何使用curl發送GET和POST請求
導語:PHP如何使用curl發送GET和POST請求,具體詳情請閱讀下面代碼,更多詳情請關注應屆畢業生考試網。 使用CURL發送請求的基本流程使用CURL的PHP擴展完成一個HTTP請求的發送一般有以下幾個步驟:1.初始化連接句柄;2.設置C -
PHP中使用cURL實現Get和Post請求
PHP中使用cURL實現Get和Post請求的方法,需要的朋友可以參考一下,就跟隨本站小編一起去了解下吧,想了解更多相關信息請持續關注我們應屆畢業生考試網! 介紹cURL 是一個利用URL語法規定來傳輸文件和數據的工具,支持很多 -
PHP中使用cURL實現Get和Post請求的方法
在PHP的應用中,一定搞清楚Get和Post請求兩種方法是怎麼應用的,以下是本站小編精心爲大家整理的PHP中使用cURL實現Get和Post請求的方法,希望對大家使用cURL有所幫助!更多內容請關注應屆畢業生網! 介紹cURL 是一個利用U -
用Photoshop如何繪製Google Currents圖標
使用Photoshop如何繪製 Google Currents 的圖標?下面是詳細介紹,歡迎閱讀,更多內容請關注應屆畢業生網!這題用 AI、Sketch 等矢量繪圖工具來做,可能比 Photoshop 合適。以下過程使用 Sketch 繪製,其他軟件可觸類旁通。一 -
PHP的GET和POST請求發送方法
在i94web博客中,我試過了暢言和多說兩種社會化評論框,後來還是拋棄了暢言,不安全。無論是暢言還是多說,我都需要從遠程抓取文章的.評論數,然後存入本地數據庫。對於多說,請求的格式如下,就跟隨小編去了解下吧,想了解更多相關 -
PHP中CURL的CURLOPT-POSTFIELDS參數使用細節
CURL確實是一個不錯的好工具,不僅在PHP中還是其他的操作系統中,都是一個非常好用的。但是如果你有些參數沒有用好的話,那可能會得不到自己理想中的結果。具體情況如下,更多消息請關注應屆畢業生網! 在通常情況下,我 -
php的curl實現get和post的代碼
類似於dreamhost這類主機服務商,是顯示fopen的使用的。使用php的curl可以實現支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。具體使用如下,更多消息請關注應屆畢業生網! curl 支持SSL證書、H -
Ought Parents to Give Children Pocket英語作文
We live in a commercial society. Everything that we use is merchandise. In the commercial world the media is money. Therefore, money is very important to us. Eaing money and spending money are big pro -
The Best Thing That Could Ever Happen少兒雙語閱讀
Unit 3 The Best Thing That Could Ever Happen單元 3 最棒的事Three old men were sitting around and talking.三個老頭坐在一起聊天。The 80-year-old remarked, "The best thing that could happen to me would j -
如何在PHP中處理Protocol Buffers數據
Protocol Buffers是Google定義的一種跨語言、跨平臺、可擴展的數據傳輸及存儲的協議,因爲將字段協議分別放在傳輸兩端,傳輸數據中只包含數據本身,不需要包含字段說明,所以傳輸數據量小,解析效率高。如何在PHP中處理Protoco