欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php基础九之通过curl来做程序

程序员文章站 2022-03-07 10:33:36
...
这篇文章介绍的内容是关于php基础九之通过curl来做程序,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
<!-- 第十五章 通过cURL来做小偷程序 -->
<?php
  //如何请求微信、地图等第三方API呢?
  //这个时候就需要使用到——cURL。cURL中文翻译过来叫做基于URL的函数库。
  //它的主要功能是:使用相关的函数模拟协议请求。
  //例如:
  //1.模拟表单向某个地址发送数据
  //2.在无验证码的情况下模拟表单完成用户登录
  //3.上传某个文件到远程服务器
  //4.请求远程服务器提供的某些功能

  //curl支持dict,file,ftp,ftps,gopher,http,https,imap,imaps,idap,idaps,
  //pop3,pop3s,rtmp,rtsp,smtp,smtps,teInet和tftp协议。
  //curl同时也支持HTTPS认证、HTTP的POST、HTT和PPUT、FTP上传(这个
  //也能通过PHP的FTP扩展完成)、HTTP基于表单的上传、代理、cookies和用户名+密码的认证。
?>

<!-- curl使用方法和步骤 -->
<?php
//1.初始化curl资源
//2.参数设置请求的协议地址
//3.设置是否返回请求结果
//4.设置发送数据(无发送数据可不设置)
//5.其他的参数信息设置(按实际工作需要决定)
//6.执行或执行得到返回结果
//7.关闭curl资源
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://www.php.cn");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    $output = curl_exec($ch);
    curl_close($ch);
    print_r($output);
?>

<!-- curl 自定义get方法抓取网页 -->
<?php
    $content = get('http://www.xmtnews.com/events');
    preg_match('/<section class="ov">(.*?)<p class="hr-10"><\/p>/mis', $content,$match);
    $area = $match[1];
    preg_match_all('/<h3><a href="(.*?)" title=".*?" 
        class="headers" target="_blank">(.*?)<\/a><\/h3/>', $area, $find);
    var_dump($find);
    function get($find){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        $output = curl_exec($ch);
        curl_close($ch);
    }
?>

<!-- curl使用post发送数据 -->
<?php
    function post($url, $data){
        //初始化init方法
        $ch = curl_init();
        //指定URL
        curl_setopt($ch, CURLOPT_URL, $url);
        //设置请求后返回结果
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        //声明使用POST方式来发送
        curl_setopt($ch, CURLOPT_POST, 1);
        //发送什么数据呢
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        //忽略证书
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //忽略header头信息
        curl_setopt($ch, CURLOPT_HEADER, 0);
        //设置超时时间
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        //发送请求
        $output = curl_exec($ch);
        //关闭curl
        curl_close($ch);
        //返回数据
        return $output;
    }
?>

相关推荐:

php基础八之会话管理和控制

php基础七之php操作数据库

php基础六之错误处理

以上就是php基础九之通过curl来做程序的详细内容,更多请关注其它相关文章!

相关标签: curl php 程序