curl 是乙個利用url語法規定來傳輸檔案和資料的工具,支援很多協議,如http、ftp、telnet等。最爽的是,php也支援 curl 庫。使用php的curl 庫可以簡單和有效地去抓網頁。你只需要執行乙個指令碼,然後分析一下你所抓取的網頁,然後就可以以程式的方式得到你想要的資料了。無論是你想從從乙個鏈結上取部分資料,或是取乙個xml檔案並把其匯入資料庫,那怕就是簡單的獲取網頁內容,curl 是乙個功能強大的php庫。
①:初始化
curl_init()
②:設定屬性
curl_setopt().有一長串curl 引數可供設定,它們能指定url請求的各個細節。
③:執行並獲取結果
curl_exec()
④:釋放控制代碼
curl_close()
①:get方式實現
//初始化$curl =curl_init();
//設定抓取的url
curl_setopt($curl, curlopt_url, '');
//設定標頭檔案的資訊作為資料流輸出
curl_setopt($curl, curlopt_header, 1);
//設定獲取的資訊以檔案流的形式返回,而不是直接輸出。
curl_setopt($curl, curlopt_returntransfer, 1);
//執行命令
$data = curl_exec($curl
);
//關閉url請求
curl_close($curl
);
//顯示獲得的資料
print_r($data);
②:post方式實現
//初始化$curl =curl_init();
//設定抓取的url
curl_setopt($curl, curlopt_url, '');
//設定標頭檔案的資訊作為資料流輸出
curl_setopt($curl, curlopt_header, 1);
//設定獲取的資訊以檔案流的形式返回,而不是直接輸出。
curl_setopt($curl, curlopt_returntransfer, 1);
//設定post方式提交
curl_setopt($curl, curlopt_post, 1);
//設定post資料
$post_data = array
( "username" => "coder",
"password" => "12345");
curl_setopt(
$curl, curlopt_postfields, $post_data
);
//執行命令
$data = curl_exec($curl
);
//關閉url請求
curl_close($curl
);
//顯示獲得的資料
print_r($data);
③:如果獲得的資料時json格式的,使用json_decode函式解釋成陣列。
$output_array = json_decode($data,true); //如果第二個引數為true,就轉為陣列的形式。如果不填就為物件的形式
如果使用json_decode($data)解析的話,將會得到object型別的資料。
簡化版 post請求函式
publicfunction curl_request($url, $post_data
)
//引數1:訪問的url,引數2:post資料(不填則為get),引數3:提交的$cookies,引數4:是否返回$cookies
function curl_request($url,$post='',$cookie='', $returncookie=0)
if($cookie
) curl_setopt(
$curl, curlopt_header, $returncookie
); curl_setopt(
$curl, curlopt_timeout, 10);
curl_setopt(
$curl, curlopt_returntransfer, 1);
$data = curl_exec($curl
);
if (curl_errno($curl
)) curl_close(
$curl
);
if($returncookie
)else
}
這倆個函式雖然不難,但是還是值得學習一下的。因為在做介面或者呼叫的介面的時候,必定會用到這倆個函式。
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...