精华内容
参与话题
问答
  • php5.5.12 curl扩展

    2018-03-16 23:11:12
    php5.5.12 curl扩展 用于64为操作系统内使用 php5.5.12 curl扩展 用于64为操作系统内使用
  • Yii2-Curl, 在 PHP cURL上,基于 Yii2 cURL扩展 yii2-curl扩展 Yii2的易于工作的cURL扩展,包括RESTful支持:POST获取头部放置补丁删除要求Yii2PHP 5.4 Curl和 php Curl安装安装安装这里
  • PHP封装CURL扩展类实例

    2020-10-23 21:14:37
    主要介绍了PHP封装CURL扩展类,实例分析了基于curl发送post、get请求及操作cookie等相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • curl扩展代码

    2019-01-01 21:36:00
    curl扩展代码 /** * * curl 支持post * @param string $base_url 基础链接 * @param array $query_data 需要请求的数据 * @param string $method 方法 get/post * @param boo...

    curl扩展代码

    
    /**
         * 
         * curl 支持post
         * @param string $base_url 基础链接
         * @param array $query_data 需要请求的数据
         * @param string $method 方法 get/post
         * @param boolean $ssl 关闭ssl验证
         * @param integer $exe_timeout 执行超时时间
         * @param integer $conn_timeout 连接超时时间
         * @param integer $dns_timeout dns超时时间
         */
        function tx_curl($base_url, $query_data, $method = 'get', $ssl = true, $exe_timeout = 10, $conn_timeout = 10, $dns_timeout = 3600)
        {
            $ch = curl_init();
            
            if ( $method == 'get' ) {
                //method get
                if ( ( !empty($query_data) )
                    && ( is_array($query_data) )
                ){
                    $connect_symbol = (strpos($base_url, '?')) ? '&' : '?';
                    foreach($query_data as $key => $val) {
                        if ( is_array($val) ) {
                            $val = serialize($val);
                        }
                        $base_url .= $connect_symbol . $key . '=' . rawurlencode($val);
                        $connect_symbol = '&';
                    }
                }
            } else {
                if ( ( !empty($query_data) )
                    && ( is_array($query_data) )
                ){
                    foreach($query_data as $key => $val) {
                        if ( is_array($val) ) {
                            $query_data[$key] = serialize($val);
                        }
                    }
                }
                //method post
                curl_setopt($ch, CURLOPT_POST, 1);
                curl_setopt($ch, CURLOPT_POSTFIELDS, $query_data);
            }
            curl_setopt($ch, CURLOPT_URL, $base_url);
            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $conn_timeout);
            curl_setopt($ch, CURLOPT_DNS_CACHE_TIMEOUT, $dns_timeout);
            curl_setopt($ch, CURLOPT_TIMEOUT, $exe_timeout);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_HEADER, 0);
            // 关闭ssl验证
            if($ssl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
            }
    
            $output = curl_exec($ch);
            
            if ( $output === FALSE )
                $output = '';
                
            curl_close($ch);
            return $output;
        }
    
    posted @ 2019-01-01 21:36 栖息地 阅读(...) 评论(...) 编辑 收藏
    展开全文
  • 主要介绍了Linux下安装PHP curl扩展的方法,简单分析了Linux环境安装php的curl扩展具体步骤、相关命令与注意事项,需要的朋友可以参考下
  • 效率稍低些,常用失败的情况、curl()效率挺高的,支持多线程,不过需要开启下curl扩展。下面是curl扩展开启的步骤: 1、将PHP文件夹下的三个文件php_curl.dll,libeay32.dll,ssleay32.dll复制到system32下; 2、将...
  • php开启curl扩展

    2019-09-12 14:50:30
    今天搭建一个网站需开启下curl扩展。 下面是curl扩展开启的步骤: 1、将PHP文件夹下的三个文件libeay32.dll,ssleay32.dll复制到system32下; 2、将php.ini(c:/WINDOWS/system32目录下)中的;extension=...
    今天搭建一个网站需开启下curl扩展。

    下面是curl扩展开启的步骤:

    1、将PHP文件夹下的三个文件libeay32.dll,ssleay32.dll复制到system32下;

    2、将php.ini(c:/WINDOWS/
    system32目录下)中的;extension=php_curl.dll中的分号去掉;
    3、重启apache或者IIS。

    转载于:https://my.oschina.net/qingmeisu/blog/604456

    展开全文
  • php安装curl扩展

    千次阅读 2018-11-20 22:42:47
    的地方出错了,然后通过安装php的curl扩展后成功发送了验证码,这里做个笔记。 进入下载解压好的php源码目录,进入ext扩展目录,再进入curl的扩展目录 这时候的curl目录下是没有configure文件的,需要同phpize...

    最近用阿里云的短信验证码功能,运行的时候在curl_init();的地方出错了,然后通过安装php的curl扩展后成功发送了验证码,这里做个笔记。

    进入下载解压好的php源码目录,进入ext扩展目录,再进入curl的扩展目录

    这时候的curl目录下是没有configure文件的,需要同phpize工具生成,执行命令/usr/local/ming/php/bin/phpize,

    /usr/local/ming/php为php的安装路径

    执行phpize之后就会生成一些configure相关的文件

    然后执行命令./configure --with-curl --with-php-config=(php-config的路径)

    这里我的configure的时候出现了checking for cURL 7.10.5 or greater... configure: error: cURL version 7.10.5 or later is required to compile php with cURL support

    这是缺少curl-devel包,直接安装即可 yum -y install curl-devel

    安装好之后重新执行命令./configure --with-curl --with-php-config=(php-config的路径,如/usr/local/ming/php/bin/php-config)

    然后make 一下,好了之后执行make install就安装好了,

    然后修改php.ini文件,将extension=curl前面的;去掉。

    使用php -m查看扩展,可以看到扩展安装成功

    安装其他扩展的方法也是一样的,做个笔记,防止忘记。

     

     

    展开全文
  • cURL扩展的使用

    2018-11-30 14:39:47
    cURL介绍 cURL使用场景 爬取网页数据和资源 请求接口数据 ...检验是否开启cURL扩展的方法 1. 命令行输入:php -i 列出所有的php信息,然后ctrl+F搜索curl关键字,如果为enable则为开启,还可以...
        

    cURL介绍

    clipboard.png

    cURL使用场景

    • 爬取网页数据和资源

    • 请求接口数据

    • 下载ftp服务器资源

    • 其他所有网络上的资源

    开启扩展

    • windows下通过修改php.ini文件开启

      clipboard.png

    • 检验是否开启cURL扩展的方法

      1. 命令行输入:php -i 列出所有的php信息,然后ctrl+F搜索curl关键字,如果为enable则为开启,还可以查看curl的版本等信息。

      2. 编写一个php文件,里面输入phpinfo(),也可以打印出php信息

    PHP中使用cURL

    clipboard.png

    使用示例

    • 爬取一个网页的内容并对其进行替换

      <?php
          $ch = curl_init(); // 初始化curl句柄
          curl_setopt($ch, CURLOPT_URL, "http://news.ifeng.com/");  // 设置URL地址
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  // 执行之后不直接打印出来内容
          $res = curl_exec($ch);  // 执行
          curl_close($ch);  // 关闭curl句柄
          echo str_replace("台湾", "中国台湾省", $res);  // 替换指定内容后输出
    • 获取XML数据并解析为数组

      <?php
      // libxml_disable_entity_loader(false);
      $data = "theCityName=杭州";  // 传递的参数数据
      $ch = curl_init(); // 初始化curl句柄
      curl_setopt($ch, CURLOPT_URL, "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName");  // 设置URL地址
      curl_setopt($ch, CURLOPT_HEADER, 0); // 不显示header
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  // 执行之后不直接打印出来内容
      curl_setopt($ch, CURLOPT_POST, 1);  // 采用post方式请求
      curl_setopt($ch, CURLOPT_POSTFIELDS, $data);  // 将要post的数据传递过去
      curl_setopt($ch, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded;charset=utf-8", "Content-length:".strlen($data), "X-FORWARDED-FOR:111.222.333.4", "CLIENT-IP:111.222.333.4"));  // 设置http头部信息,并构造了一个虚拟ip,防止ip封杀
      // curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11");
      curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);  // 带上user_agent,否则可能会被查出来是爬虫,加上可能他就认为是浏览器
      $res = curl_exec($ch);  // 执行
      
      // 执行成功返回信息,执行失败显示错误
      if (!curl_errno($ch)) {
          //  如果是加载一个xml文件,用simplexml_load_file
          $xmlObj = simplexml_load_string($res);
          $jsonData = json_encode($xmlObj);
          $arr = json_decode($jsonData,true);
      
          foreach($arr as $val) {
            foreach($val as $k => $v) {
                echo "{$k} => {$v}<br>";
            }
          }
      } else {
          echo "cURL error: " . curl_error($ch);
      }
      
      curl_close($ch);  // 关闭curl句柄
    • 模拟登陆获取用户中心数据

      <?php
      $data = 'username=xxxxxx@qq.com&password=xxxxxx&remember=1';
      $ch = curl_init();  // 初始化
      curl_setopt($ch, CURLOPT_URL, "http://www.imooc.com/user/login");  // 设置访问网页的URL
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  // 执行之后不直接打印出来
      // cookie相关设置,这部分设置需要在所有会话开始之前设置
      date_default_timezone_set('PRC');  // 使用cookie必须先设置时区
      curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
      curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiefile");
      curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiefile");
      curl_setopt($ch, CURLOPT_COOKIE, session_name() . '=' . session_id());
      curl_setopt($ch, CURLOPT_HEADER, 0);
      curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);  // 这样能让curl跟踪页面跳转
      curl_setopt($ch, CURLOPT_POST, 1);
      curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
      curl_setopt($ch, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded;charset=utf-8",
          "Content-length: ".strlen($data)
          ));
      curl_exec($ch);  // 执行
      curl_setopt($ch, CURLOPT_URL, "http://www.imooc.com/space/index");
      curl_setopt($ch, CURLOPT_POST, 0);
      curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type:text/xml"));
      $output = curl_exec($ch);
      curl_close($ch);
      echo $output;
      ?>
    • 下载ftp服务器上面的资源

      <?php
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, "ftp://192.168.1.100/downloaddemo.txt");
      curl_setopt($ch, CURLOPT_HEADER, 0);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER,  1);
      curl_setopt($ch, CURLOPT_TIMEOUT, 300);  // 超时自动结束
      curl_setopt($ch, CURLOPT_USERPWD, "peter.zhou:123456");  // ftp的用户名和密码,冒号分割
      $outfile = fopen('dest.txt', 'wb'); // 保存到本地的文件名
      $rtn = curl_exec($ch);
      fclose($outfile);
      if(!curl_errno($ch)) {
          // $info = curl_getinfo($ch);
          // print_r($info);
          echo "RETURN: " . $rtn;
      } else {
          echo 'Curl error: ' . curl_error($ch);
      }
    • 上传资源到ftp服务器

      <?php
      $ch = curl_init();
      $localfile = 'ftp01.php';
      $fp = fopen($localfile, 'r');
      curl_setopt($ch, CURLOPT_URL, "ftp://192.168.1.100/ftp01_uploaded.php");
      curl_setopt($ch, CURLOPT_HEADER, 0);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_TIMEOUT, 300);
      curl_setopt($ch, CURLOPT_USERPWD, "peter.zhou:123456");
      
      curl_setopt($ch, CURLOPT_UPLOAD, 1);
      curl_setopt($ch, CURLOPT_INFILE, $fp);
      curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile));
      $rtn = curl_exec($ch);
      fclose($fp);
      if (!curl_errno($ch)) {
          echo "Uploaded successfully.";
      } else {
          echo "Curl error: " .curl_error($ch);
      }
    • 访问https资源

      <?php
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, "https://cdn.bootcss.com/jquery/3.3.1/jquery.js");
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  // 执行之后不直接打印出来
      
      // 设置https支持
      date_default_timezone_set('PRC');
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);  // 终止从服务器进行验证
      
      $output = curl_exec($ch);
      curl_close($ch);
      echo $output;

    cURL常用函数

    • curl_init();    // 初始化cURL会话,可以传入url,也可以不传入,返回cURL会话句柄

    • curl_setport($ch, $option, $value);    // 为cURL设置一个选项

    • curl_setport_array($ch, $optionArray);    // 为cURL批量设置选项

    • curl_exec($ch);    // 执行cURL会话,返回执行结果

    • curl_errno($ch);    // 返回最后一次的错误代码,没有错误返回0

    • curl_error($ch);    // 返回当前回话最后一次错误的字符串

    • curl_close($ch);    // 关闭cURL会话

    • curl_escape($ch,$str);    // 使用URL编码当前的字符串

    • curl_unescape($ch,$str);    // 解码给定的URL字符串

    • curl_getinfo($ch);    // 获取一个cURL连接资源句柄信息,如果第二个参数传入了具体的参数,那么会只返回这一个参数的值

    • curl_version();    // 获取cURL版本信息,参数一般情况下不需要

    展开全文
  • PHP封装CURL扩展类.zip

    2019-07-11 11:07:02
    主要介绍了PHP封装CURL扩展类,实例分析了基于curl发送post、get请求及操作cookie等相关技巧 编码规范 * @class 类名首字母大写,类名为多个单词, 每个大字首字母大写 eg: class Curl , class ...
  • php curl扩展

    2015-12-09 09:19:04
    php curl扩展  http://www.cnblogs.com/Zjmainstay/p/php-curl.html PHP cURL 应用 对于做过数据采集的人来说,cURL一定不会陌生。虽然在PHP中有file_get_contents函数可以获取远程链接的数据,但是它的可...
  • PHP安装CURL扩展

    千次阅读 2016-09-29 10:36:30
    场景: PHP已完成安装,单独安装CURL扩展 1. 安装LIBCURL 下载安装文件 ... ./configure --prefix=/usr/local/bin/curl/ ...2. 编译curl扩展 进入php源码文件夹,php-5.6.26/ext/curl 执行p
  • PHP安装curl扩展

    千次阅读 2018-03-27 14:09:31
    昨天在写文章的时候,突然出现了一个很顽皮的bug。 一直跳到404页面??...原来是 curl 扩展没有装...... (ps:之前写文章的时候都没出现过这个情况,很顽皮~) 来记录一下安装过程吧: ...
  • * @description: 封装CURL扩展* @date: 2014-07-28 16:04*//*** @编码规范* @class 类名首字母大写,类名为多个单词, 每个大字首字母大写 eg: class Curl , class CurlPage* @variable 变量名小写, 变量名为多个单词...
  • linux 安装 curl 扩展

    2017-11-17 15:27:00
    linux 下的curl扩展安装,记录一下(发现网上好多抄袭的也不检测一下能不能用)  1.下载curl安装包: https://curl.haxx.se/download.html  2.解压: 如 tarzxvfcurl-7.39.0.tar.gz  3.进入解压后的curl文件夹 ...
  • 主要介绍了php基于curl扩展制作跨平台的restfule 接口的相关资料以及详细的代码,有需要的小伙伴可以参考下。
  • linux 添加php curl扩展

    千次阅读 2016-11-19 08:45:03
    1.先查看php源码中是否带有curl扩展,如果有则不需要下载,如果没有则需要下载,可以用wget下载,也可以用yum下载源程序 用find 命令可以可以查看curl扩展目录,如 find / -name curl,找到curl的扩展目录,一般在/usr/...
  • curl是一个文件传输工具,URL语法是在命令行模式下工作,同时它支持许多协议和身份验证,PHP通常实现复杂的传输函数,爱站技术频道小编带你进入下文了解php添加curl扩展的步骤!步骤如下:1. 进到对应扩展目录# cd /...
  • linux 安装php curl 扩展

    2019-04-11 18:11:56
    今天在测试服务器上布置禅道时,发现有一个扩展没装 下面开始安装 ... ... (下面步骤中的具体路径设置,大家...在PHP安装包中找到curl扩展目录 [root@localhost /]# cd php-7.0.2/ext/curl/ 运行phpize [root@l...
  • /*** @description: 封装CURL扩展* @date: 2014-07-28 16:04*//*** @编码规范* @class 类名首字母大写,类名为多个单词, 每个大字首字母大写 eg: class Curl , class CurlPage* @variable 变量名小写, 变量名为多个...
  • PHP7 CURL扩展加载失败

    2020-03-11 17:50:17
    安装禅道时检测CURL扩展加载失败,网上找了一通,全是要把ssleay32....其实只要把libssh2.dll这个文件粘贴到Apache下的bin目录就行了,然后重启一下Apache,CURL扩展就加载成功了。 参考文章:https://my.oschina.n...
  • 主要介绍了windows 2008 R2 64位服务器中开启php curl扩展的方法,需要的朋友可以参考下
  • Linux下安装PHP curl扩展

    2019-08-14 11:55:10
    本文实例讲述了Linux下安装PHP curl扩展的方法。分享给大家供大家参考,具体如下: 今天开发时遇到这样的一个问题,就是如何在Linux下安装PHP的curl扩展,我的LNMP环境都是原先进行编译安装了的,不是使用YUM方式...
  • php7编译安装curl扩展

    千次阅读 2018-06-06 11:24:56
    编译安装php 后 运行php -m 发现没有curl扩展安装CURL扩展切换到php源码中 /php/etc/curl执行/www/soft/php/bin/phpize执行./configure —with-php-config=/www/soft/php/bin/pho-config【后面的路径为 php安装路径...
  • 给PHP安装和开启curl扩展
  • Ubuntu安装一些开源的软件会出现curl扩展缺失的问题。采用如下方式解决: sudo apt-get install curl libcurl3 libcurl3-dev php5-curl sudo /etc/init.d/nginx restart

空空如也

1 2 3 4 5 ... 20
收藏数 1,905
精华内容 762
关键字:

curl扩展