首頁  >  文章  >  後端開發  >  使用php curl_setopt()函數實作抓取網頁與POST資料的簡單例子

使用php curl_setopt()函數實作抓取網頁與POST資料的簡單例子

怪我咯
怪我咯原創
2017-05-19 11:29:551949瀏覽

前面的文章對大家講解了php中curl_setopt函數的概念,它是PHP的一個擴充庫,使用curl_setopt()函數可以方便快速的抓取網頁(可以用在擷取方面) ,使用它需要在php.ini 中配置開啟。

extension=php_curl.dll

使用php curl_setopt()函數實作抓取網頁與POST資料的簡單例子

現在已經可以使用php curl_setopt函數了,那我們現在先看第一種用法:

1、 一個抓取網頁的簡單案例:

程式碼如下:

<?php

// 创建一个新cURL资源  
$ch = curl_init();

// 设置URL和相应的选项  
curl_setopt($ch, CURLOPT_URL, "http://www.php.cn/");
curl_setopt($ch, CURLOPT_HEADER, false);

// 抓取URL并把它传递给浏览器  
curl_exec($ch);

//关闭cURL资源,并且释放系统资源  
curl_close($ch); 
?>

上面的範例程式碼抓取了一個網域為http://www.php. cn/的網頁,程式碼運行結果如下:

使用php curl_setopt()函數實作抓取網頁與POST資料的簡單例子


2、POST資料案例:

用curl的時候,很多時候會有資料互動的,所以比較重要的。

 <?php  
     $ch = curl_init();  
     /*在这里需要注意的是,要提交的数据不能是二维数组或者更高 
     *例如array(&#39;name&#39;=>serialize(array(&#39;tank&#39;,&#39;zhang&#39;)),&#39;sex&#39;=>1,&#39;birth&#39;=>&#39;20101010&#39;) 
     *例如array(&#39;name&#39;=>array(&#39;tank&#39;,&#39;zhang&#39;),&#39;sex&#39;=>1,&#39;birth&#39;=>&#39;20101010&#39;)这样会报错的*/ 
     $data = array(&#39;name&#39; => &#39;test&#39;, &#39;sex&#39;=>1,&#39;birth&#39;=>&#39;20101010&#39;);  
     curl_setopt($ch, CURLOPT_URL, &#39;http://localhost/mytest/curl/upload.php&#39;);  
     curl_setopt($ch, CURLOPT_POST, 1);  
     curl_setopt($ch, CURLOPT_POSTFIELDS, $data);  
     curl_exec($ch);  
     ?>

在upload.php檔案中,print_r($_POST);利用curl就能抓取出upload.php輸出的內容Array ( [name] => test [sex] => ; 1 [birth] => 20101010 )

【相關文章推薦】

1.php curl_setopt函數概念與用法實例介紹

2 .PHP curl_exec函數的用法實例詳解

#

以上是使用php curl_setopt()函數實作抓取網頁與POST資料的簡單例子的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn