CURL操作與實踐

mip33 9年前發布 | 44K 次閱讀 Linux curl

    CURL是liunx系統的一個命令行工具,目的是進行數據抓取;現在CURL已經在非常多的系統中使用,WIN用戶可以使用DOS版本的CURL命令操作,操作方法很簡單,就是在CMD窗口中找到CURL文件夾,執行CURL命令即可,CMD中操作CURL不是本文講解的重點,本文講解PHP中的CURL;

一,PHP中安裝CURL

1,PHP.INI中找到 ;extension=php_curl.dll,去掉分號,如果沒有自己添加一行;

2,本文使用的是phpstudy,在其他菜單->PHP擴展及設置->PHP擴展:找到php_curl,打鉤即可;但是通常情況下phpstudy是默認打開curl功能的;

????????????二,CURL的最簡單操作????????????

<?php
// 創建curl,若此步驟錯誤,說明PHP擴展沒有打開
$ch = curl_init();
//設置curl,該步驟是最重要,內容也是最多的
curl_setopt($ch, CURLOPT_URL,‘http://www.baidu.com’);
// 執行本次curl
curl_exec($ch);
// 關閉cURL資源,并且釋放系統資源
curl_close($ch);
?>

--執行以后,于是看見百度網頁;

三,CURL設置簡介

curl執行步驟一般是四步走,初始化-設置-執行-關閉,其中設置的內容最多,也最復雜,設置如下:

http://www.w3cschool.cc/php/php-ref-curl.html

四,CURL模擬POST

1,執行CURL的頁面:

<?php
//設置傳遞的數據
$curlPost= array('s'=>'tttt','p'=>'sssfe');;
$ch=curl_init();
//設置訪問URL
curl_setopt($ch,CURLOPT_URL,' 
//設置是否獲取頁面的head,1代表true,一般情況是設置為0
curl_setopt($ch,CURLOPT_HEADER,0);
//設置是否以文件流形式返回,文件流返回暫不顯示,等待提取數據
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//設置是否要post數據
curl_setopt($ch,CURLOPT_POST,1);
//設置POST文件內容
curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
$data=curl_exec($ch);
curl_close($ch);
//打印出返還數據
print_r($data);

2,接收頁面:

<?php 
//接收頁面直接返還出接收的數據
print_r($_REQUEST);

五,將post簡單封裝成類

<?php
class curl{
     public static function curl_post($url,$data){
        $ch=curl_init();
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_HEADER,0);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch,CURLOPT_POST,1);
        curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
        $rs=curl_exec($ch);
        curl_close($ch);
        return $rs;
     }
 }
//打印結果
 print_r(curl::curl_post('http://localhost/test/curl.php',array('data_1','data_2')));


 本文由用戶 mip33 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!