初試php中的curl

meteoric發表於2011-01-22

關於curl的相關函式,可以點選參考這裡:

http://www.wapm.cn/phpdoc/zh/ref.curl.html

 

但試的時候發現google返回的依舊是亂碼,而baidu返回的則不是,懷疑可能是提交的時候需要再加一些引數,有空再好好研究一下 ?

 

curl_setopt 裡面詳細的引數可以點選這裡檢視:

http://www.wapm.cn/phpdoc/zh/function.curl-setopt.html

 

下面的程式碼只是一個很簡單的測試例子,獲取請求的狀態碼、並顯示獲取的頁面。

程式碼中的註釋是另外一種獲取網頁的方法。更多的例子或專案可以在搜尋引擎裡搜尋到:例如php爬蟲、php curl、php抓取網頁之類的關鍵字..

 

   1: <meta http-equiv=`content-type` content=`text/html;charset=utf-8` /> 

   2: <?php 

   3:   $url = "http://www.baidu.com/"; 

   4:   // $contents = file_get_contents($url); 

   5:   //   

   6:   // $contents = iconv("gb2312", "utf-8", $contents); 

   7:   // 

   8:   // echo $contents; 

   9:   $ch = curl_init($url); 

  10:   curl_setopt($ch, CURLOPT_RETURNTRANSFER , true);//返回獲取的輸出的文字流 

  11:   $ret = curl_exec($ch); 

  12:   curl_setopt($ch, CURLOPT_TIMEOUT, 1); 

  13:   //獲取請求的http狀態      需要放在exec後close之前 

  14:   $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 

  15:   echo $response_code; 

  16:   curl_close($ch); 

  17:   $ret = mb_convert_encoding($ret, "UTF-8", "gb2312"); 

  18:   echo $ret; 

  19: ?>


相關文章