`
yukar
  • 浏览: 125892 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

从FTP获取自动下载文件的PHP类

    博客分类:
  • php
阅读更多
/**
 * 从FTP获取自动下载文件的PHP类
 * @author yukar ( http://yukar.iteye.com )
 */
class FtpClass{
    private $ftpObj;
    private $ftpHost = "****";    // 服务器地址
    private $ftpPort = ****;            // 服务器端口
    private $ftpUser = "****";        // 用户名
    private $ftpPassword = "****";        // 口令
    private $localBase = '/your/save/path'; //你存放的目录
    function __construct($initData=array()){
        if (isset($initData['ftpHost']) && $initData['ftpHost']){
            $this->ftpHost = $initData['ftpHost'];
        }
        if (isset($initData['ftpPort']) && $initData['ftpPort']){
            $this->ftpPort = $initData['ftpPort'];
        }
        if (isset($initData['ftpUser']) && $initData['ftpUser']){
            $this->ftpUser = $initData['ftpUser'];
        }
        if (isset($initData['ftpPassword']) && $initData['ftpPassword']){
            $this->ftpPassword = $initData['ftpPassword'];
        }
        if (isset($initData['localBase']) && $initData['localBase']){
            $this->localBase = $initData['localBase'];
        }
    }
    
    function ftp_connect(){
        if(!$this->ftpObj){
            $this->ftpObj = ftp_connect($this->ftpHost,$this->ftpPort);    // 连接ftp服务器
            if($this->ftpObj) {
                if(ftp_login($this->ftpObj, $this->ftpUser, $this->ftpPassword)) {    // 登录
                    return true;
                }else{
                    return false;
                }
            }else {
                return false;
            }
        }
    }
    
    function ftp_download_file($fileName) {
        //获取FTP路径
        $ftpPath = dirname($fileName) . "/";  
        //获取文件名  
        $selectFile = basename($fileName);    
        // 进入指定路径
        if(@ftp_chdir($this->ftpObj,$ftpPath)) {            
            //$localBase 如果不存在,新创建目录,务必确保 有创建权限
            if(!is_dir($this->localBase)){
                mkdir($this->localBase, 0777);
            }
            $toFile = $this->localBase.$fileName;
            if(ftp_get($this->ftpObj, $toFile, $selectFile, FTP_BINARY)) {    //下载指定的FTP文件到指定的本地文件
                return true;
            }else {
                return false;
            }
        }else {
            return false;
        }
    }
    
    function ftp_quit(){
        if($this->ftpObj){
            ftp_quit($this->ftpObj);
        }
    }

}

 

调用就更简单了

$ftpObj = new FtpClass();
$ftpObj->ftp_connect();
$filename = '/config/config.sample.php';
$ftpObj->ftp_download_file($filename);
$ftpObj->ftp_quit();
exit();
0
0
分享到:
评论

相关推荐

    从FTP获取自动下载文件的php类.zip

    分享一个从FTP获取自动下载文件的php类,连接ftp服务器登陆获取ftp路径,文件名,进入指定路径,或者创建新的目录,下载指定的FTP文件到指定的本地文件。 

    php获取远程图片并下载保存到本地的方法分析

    本文实例讲述了php获取远程图片并下载保存到本地的方法。分享给大家供大家参考,具体如下: 远程图片指的是远端服务器上的数据我们可以通过php的许多函数来读取下载了,这里整理了两个可以自动下载远程图片并下载...

    淘宝客程序全自动采集版源码 淘宝客自动采集软件

    解压之后把upload文件夹里面的文件 通过ftp软件上传至网上服务器空间的根目录下(也可以子目录下,这时访问 路径须加上子目录)。 然后运行http://你的网址/install进行安装 填写数据库、用户名和密码等 后台登陆地址...

    PHP程序开发范例宝典III

    实例030 获取文件域的值 42 2.2 动态添加表单元素 42 实例031 不提交表单获取单选按钮的值 43 实例032 选中单选按钮后显示其他表单元素 44 实例033 根据数据表结构自动生成数据录入页面 45 实例034 投票...

    PHPcn5.0专业的php编程工具,多标签页,代码高亮,代码折叠,输入法

    4、可以快速地构建一条SQL语句,自动获取字段名,表名;创建表。 5、多标签页,代码高亮,单进程,代码折叠 上传到我的FTP空间的下载地址。绿色无广告,只有4M大小 下载地址:http://w745.com/own/phpcn4.2.zip ...

    php网络开发完全手册

    6.5 文件的上传与下载 99 6.5.1 文件的上传 99 6.5.2 文件的下载 100 6.6 小结 101 第7章 字符的处理与正则表达式 102 7.1 字符类型的特殊性 102 7.2 字符的显示与格式化 102 7.2.1 字符的显示 102 7.2.2 字符的格式...

    PHP和MySQL Web开发第4版pdf以及源码

    10.3.2 从多个表中获取数据 10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 ...

    PHP和MySQL WEB开发(第4版)

    20.5.1 使用FTP备份或镜像一个文件 20.5.2 上传文件 20.5.3 避免超时 20.5.4 使用其他的FTP函数 20.6 进一步学习 20.7 下一章 第21章 日期和时间的管理 21.1 在PHP中获取日期和时间 21.1.1 使用date()函数 21.1.2 ...

    PHP和MySQL Web开发第4版

    10.3.2 从多个表中获取数据 10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 ...

    多淘铺PHP淘宝店铺导航系统 v1.4.3.rar

    PHP淘宝店铺导航系统,PHP淘宝客系统,程序定位为淘宝店铺导航模式,店铺可自由添加/编辑等操作,采用ajax无刷新技术获取店铺信息。多淘铺淘宝店铺导航系统功能说明:  1.店铺可以自由添加编辑,logo修改,推荐,...

    PHP excel通用成绩查询系统 v7.8 SAE版.zip

    4.使用灵活:支持多次查询,比如工资查询往往多月查询,那么你只需一个月放一个数据库,下拉的查询选项自动获取(选项即文件名);且每次查询除了设置的查询条件列的标题得一致外,其他的都是自定义可以不一样(任意列...

    PHP Csv(Excel)通用成绩查询系统 v20180831.zip

    4. 使用灵活:支持多次查询,比如工资查询往往多月查询,那么你只需一个月放一个数据库,下拉的查询选项自动获取(选项即文件名);且每次查询除了设置的查询条件列的标题得一致外,其他的都是自定义可以不一样(任意...

    PHP excel通用成绩查询系统 v2018.rar

    4.使用灵活:支持多次查询,比如工资查询往往多月查询,那么你只需一个月放一个数据库,下拉的查询选项自动获取(选项即文件名);且每次查询除了设置的查询条件列的标题得一致外,其他的都是自定义可以不一样(任意列...

    天猫多店宝(双模式淘点金版) v3.0

    天猫多店宝是一种新型的淘宝客程序淘宝屏蔽蜘蛛,导致天猫100%页面原创,直接使用淘点金进行转换直接使用天猫店铺精美页面,提高佣金转化率后台配置天猫店铺地址即可全自动智能转换自动采集安装必看:ftp上传需使用...

    天猫多店宝 v3.0.zip

    ftp上传需使用二进制上传方式,方法请百度(注:linux环境下时,文件所属用户组不能是root) 根目录(index.php所在目录)需要读写权限(用虚拟空间的忽略此条,linux:0766、windows:users读写) 首次使用程序请...

    JAVA上百实例源码以及开源项目

     数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录  一个Java+ajax写...

    Editplus 3[1].0

    作者主页有很多语法自动完成文件下载,地址 http://editplus.com/files.html 【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis) 在“工具→参数选择→用户工具”选项页设置,...

    VIVI万能小偷程序 v6.1.rar

    vivi万能小偷程序只需要输入目标站地址就能全自动采集,高智能的采集程序,支持98%的单级域名站点,规则制作十分简单,菜鸟也能制作采集规则,采集不求人。 vivi万能小偷程序功能简介 后台配置采集节点,输入目标...

    LINUX网站建设技术指南

    8.4.1 PHP从客户端获取信息的方法:外界变量 8.4.2 使用HTTP Form获取信息 8.4.3 HTTP Cookies与客户端信息 8.4.4 使用环境变量获取客户端信息 8.5 基本控制流程:分支和循环 8.5.1 条件语句和分支结构 8.5.2 循环...

Global site tag (gtag.js) - Google Analytics