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')));


你可能感兴趣的:(CURL操作与实践)