PHP中使用CURL實現GET和POST請求

2021-09-06 20:34:00 字數 2509 閱讀 3832

curl 是乙個利用url語法規定來傳輸檔案和資料的工具,支援很多協議,如http、ftp、telnet等。最爽的是,php也支援 curl 庫。使用php的curl 庫可以簡單和有效地去抓網頁。你只需要執行乙個指令碼,然後分析一下你所抓取的網頁,然後就可以以程式的方式得到你想要的資料了。無論是你想從從乙個鏈結上取部分資料,或是取乙個xml檔案並把其匯入資料庫,那怕就是簡單的獲取網頁內容,curl 是乙個功能強大的php庫。

①:初始化

curl_init()

②:設定屬性

curl_setopt().有一長串curl 引數可供設定,它們能指定url請求的各個細節。

③:執行並獲取結果

curl_exec()

④:釋放控制代碼

curl_close()

①:get方式實現

1  //初始化

2 $curl = curl_init();

3 //設定抓取的url

4 curl_setopt($curl, curlopt_url, '');

5 //設定標頭檔案的資訊作為資料流輸出

6 curl_setopt($curl, curlopt_header, 1);

7 //設定獲取的資訊以檔案流的形式返回,而不是直接輸出。

8 curl_setopt($curl, curlopt_returntransfer, 1);

9 //執行命令

10 $data = curl_exec($curl);

11 //關閉url請求

12 curl_close($curl);

13 //顯示獲得的資料

14 print_r($data);

②:post方式實現

1 //初始化

2 $curl = curl_init();

3 //設定抓取的url

4 curl_setopt($curl, curlopt_url, '');

5 //設定標頭檔案的資訊作為資料流輸出

6 curl_setopt($curl, curlopt_header, 1);

7 //設定獲取的資訊以檔案流的形式返回,而不是直接輸出。

8 curl_setopt($curl, curlopt_returntransfer, 1);

9 //設定post方式提交

10 curl_setopt($curl, curlopt_post, 1);

11 //設定post資料

12 $post_data = array(

13 "username" => "coder",

14 "password" => "12345"

15 );

16 curl_setopt($curl, curlopt_postfields, $post_data);

17 //執行命令

18 $data = curl_exec($curl);

19 //關閉url請求

20 curl_close($curl);

21 //顯示獲得的資料

22 print_r($data);

③:如果獲得的資料時json格式的,使用json_decode函式解釋成陣列。

$output_array = json_decode($data,true); //如果第二個引數為true,就轉為陣列的形式。如果不填就為物件的形式

如果使用json_decode($data)解析的話,將會得到object型別的資料。

1 //引數1:訪問的url,引數2:post資料(不填則為get),引數3:提交的$cookies,引數4:是否返回$cookies

2 function curl_request($url,$post='',$cookie='', $returncookie=0)

13 if($cookie)

16 curl_setopt($curl, curlopt_header, $returncookie);

17 curl_setopt($curl, curlopt_timeout, 10);

18 curl_setopt($curl, curlopt_returntransfer, 1);

19 $data = curl_exec($curl);

20 if (curl_errno($curl))

23 curl_close($curl);

24 if($returncookie)else

33 }

這倆個函式雖然不難,但是還是值得學習一下的。因為在做介面或者呼叫的介面的時候,必定會用到這倆個函式。

PHP中使用cURL實現Get和Post請求的方法

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

PHP中使用cURL實現Get和Post請求的方法

1.curl介紹 curl 是乙個利用url語法規定來傳輸檔案和資料的工具,支援很多協議,如http ftp telnet等。最爽的是,php也支援 curl 庫。本文將介紹 curl 的一些高階特性,以及在php中如何運用它。2.基本結構 1 初始化 curl init 2 設定變數 curl s...

PHP中使用cURL實現Get和Post請求的方法

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