php curl使用總結(一)

2022-08-27 22:48:16 字數 2913 閱讀 9262

今天和第三方支付做對接的時候,在本地用wamp(php版本5.4.14)執行他們的支付demo的時候,報了乙個錯誤。loadxml函式中不能傳空值。排查**的時候,發現他們用了curl,我以前也接觸過curl,但是並沒有很深的研究只知道他是一種模擬瀏覽器傳輸資料的工具。藉著這個機會把curl好好的研究一下。

1、curl是什麼

php中使用最多的是通過curl來模擬get和post請求。

2、如何使用curl

(1)、要想使用curl,第一步先要在php中開啟curl,在php配置檔案php.ini中找到extension=php_curl.dll,把前面的『;』去掉。重啟伺服器。在php**中用phpinfo()列印,發現圖中curl說明開啟成功。

(2)、使用curl完成簡單的請求主要分為四大步:

1).初始化,建立乙個新的curl資源。

2).設定url和相應的選項

3).抓取url並把他傳遞給瀏覽器

4).關閉curl資源。把資源釋放。

貼上專案一段**,好好的分析一下。

curl_init這個是初始化,建立乙個新的curl資源。

curl_setopt這個是php的函式。設定乙個curl傳輸選項。

根據php手冊對curl_setopt這個函式說明一下,這個函式需要傳三個引數,第乙個是curl控制代碼(我的理解就是那個建立的curl資源)。第二個是需要設定的curlopt_xx選項。第三個引數就是選項對應的值。

curl_exec函式是執行curl會話。這個函式是初始化乙個curl並且全部的選項都設定之後再呼叫。

成功時返回true, 或者在失敗時返回false。 然而,如果curlopt_returntransfer選項被設定,函式執行成功時會返回執行的結果,失敗時返回false。 

curlopt_url 需要獲取的url位址 curlopt_returntransfer 將curl_exec()獲取的資訊以檔案流的形式返回,而不是直接輸出。

curlopt_httpheader  乙個用來設定http頭字段的陣列。使用如下的形式的陣列進行設定:array('content-type: text/plain', 'content-length: 100')
curlopt_post 啟用時會傳送乙個常規的post請求     curlopt_postfields  全部資料以http協議中post方式傳送。

跟多curlopt對應的設定請檢視php文件

特意說明一下curl_setopt_array — 為 curl 傳輸會話批量設定選項

使用案例為

1

<?php2 //

建立乙個新curl資源

3$ch =curl_init();45

//設定url和相應的選項

6$options = array(curlopt_url => '',

7 curlopt_header => false8);

910 curl_setopt_array($ch, $options

);11

12//

抓取url並把它傳遞給瀏覽器

13 curl_exec($ch

);14

15//

關閉curl資源,並且釋放系統資源

16 curl_close($ch

);17 ?>

curl是很強大的,例如,我們只想把獲取到的內容輸入到檔案,而不是直接輸出給瀏覽器,我們就可以使用curlopt_returntransfer選項!

這樣在curl執行的時候,就會把頁面的內容輸出到檔案當中,我們就可以完成採集等功能啦!

效率方面,curl的原理是模擬瀏覽器的操作,它的效率要比file_get_contents()高出四倍以上,試想一下,我們

要採集乙個資訊量特別龐大的站,執行效率的差別可想而知!

不單單是效率上,穩定性上來說,curl也遠比file_get_contents()函式要好很多!

這就是強大的curl,下文將給大家詳細介紹它的高階應用,我們可以模擬瀏覽器的post傳值,甚至上傳!

php curl 使用集合

原文章 it技術擎 裡面有更豐富的資料 下面的示例中舉例了php curl的幾種用法的彙總 包含1 post請求資料 2 get請求資料 3 傳送特定格式的資料 4 在請求的時候帶cookie 下面是 function curl post url,post data array method get...

php curl 擴充套件使用

1.curl介紹 curl 是乙個利用url語法規定來傳輸檔案和資料的工具,支援很多協議,如http ftp telnet等。最爽的是,php也支援 curl 庫。本文將介紹 curl 的一些高階特性,以及在php中如何運用它。2.基本結構 在學習更為複雜的功能之前,先來看一下在php中建立curl...

php curl簡單使用

function get url,data curl close ch return content function post url,data refer curl close ch return content 模擬上傳檔案 對於上傳檔案,這句話包含兩個資訊 1.要上傳檔案,post的資料引數...