- 浏览: 2016261 次
- 来自: 武汉
文章分类
- 全部博客 (415)
- UI设计 (19)
- PHP (26)
- PHP工具类 (23)
- 二次开发 (53)
- phpMVC (28)
- javascript (50)
- JS 组件 (20)
- MYSQL (37)
- 其他 (16)
- xml/flash/flex (6)
- 版本控制 (7)
- 开源 (4)
- bug解决 (5)
- Linux (15)
- NoSQL (14)
- 软件设计 (21)
- C/PHP内核 (5)
- 安全性 (8)
- 面试 (18)
- 设计模式 (4)
- 重构 (6)
- 开发配置 (11)
- SQL SERVER (12)
- 采集 (3)
- SEO (2)
- 维护 (15)
- UML (5)
- 硬件标准 (1)
- 架构 (8)
- JAVA (1)
最新评论
-
carry0987:
求大神分離下X3的模板...不然對於PHP7不友好啊...
分离自Discuz模板类和语法 -
青木得海角:
你好,里面的 Crypt/TripleDES.php 和 Cr ...
POS机算法 -
zohog:
楼主,Mac.php中里面的 Crypt/TripleDES. ...
POS机算法 -
zohog:
楼主,Mac.php中里面的 Crypt/TripleDES. ...
POS机算法 -
q59200182:
能不能给个完整的demo 新手上路不会 求带
AngularJs 指令directive之controller,link,compile
<?php /** * FTP操作类 * @author chenzhouyu * *使用$ftps = pc_base::load_sys_class('ftps');进行初始化。 *首先通过 $ftps->connect($host,$username,$password,$post,$pasv,$ssl,$timeout);进行FTP服务器连接。 *通过具体的函数进行FTP的操作。 *$ftps->mkdir() 创建目录,可以创建多级目录以“/abc/def/higk”的形式进行多级目录的创建。 *$ftps->put()上传文件 *$ftps->rmdir()删除目录 *$ftps->f_delete()删除文件 *$ftps->nlist()列出指定目录的文件 *$ftps->chdir()变更当前文件夹 *$ftps->get_error()获取错误信息 */ class ftps { //FTP 连接资源 private $link; //FTP连接时间 public $link_time; //错误代码 private $err_code = 0; //传送模式{文本模式:FTP_ASCII, 二进制模式:FTP_BINARY} public $mode = FTP_BINARY; /** * 连接FTP服务器 * @param string $host 服务器地址 * @param string $username 用户名 * @param string $password 密码 * @param integer $port 服务器端口,默认值为21 * @param boolean $pasv 是否开启被动模式 * @param boolean $ssl 是否使用SSL连接 * @param integer $timeout 超时时间 */ public function connect($host, $username = '', $password = '', $port = '21', $pasv = false, $ssl = false, $timeout = 30) { $start = time(); if ($ssl) { if (!$this->link = @ftp_ssl_connect($host, $port, $timeout)) { $this->err_code = 1; return false; } } else { if (!$this->link = @ftp_connect($host, $port, $timeout)) { $this->err_code = 1; return false; } } if (@ftp_login($this->link, $username, $password)) { if ($pasv) ftp_pasv($this->link, true); $this->link_time = time()-$start; return true; } else { $this->err_code = 1; return false; } register_shutdown_function(array(&$this,'close')); } /** * 创建文件夹 * @param string $dirname 目录名, */ public function mkdir($dirname) { if (!$this->link) { $this->err_code = 2; return false; } $dirname = $this->ck_dirname($dirname); $nowdir = '/'; foreach ($dirname as $v) { if ($v && !$this->chdir($nowdir.$v)) { if ($nowdir) $this->chdir($nowdir); @ftp_mkdir($this->link, $v); } if($v) $nowdir .= $v.'/'; } return true; } /** * 上传文件 * @param string $remote 远程存放地址 * @param string $local 本地存放地址 */ public function put($remote, $local) { if (!$this->link) { $this->err_code = 2; return false; } $dirname = pathinfo($remote,PATHINFO_DIRNAME); if (!$this->chdir($dirname)) { $this->mkdir($dirname); } if (@ftp_put($this->link, $remote, $local, $this->mode)) { return true; } else { $this->err_code = 7; return false; } } /** * 删除文件夹 * @param string $dirname 目录地址 * @param boolean $enforce 强制删除 */ public function rmdir($dirname, $enforce = false) { if (!$this->link) { $this->err_code = 2; return false; } $list = $this->nlist($dirname); if ($list && $enforce) { $this->chdir($dirname); foreach ($list as $v) { $this->f_delete($v); } } elseif ($list && !$enforce) { $this->err_code = 3; return false; } @ftp_rmdir($this->link, $dirname); return true; } /** * 删除指定文件 * @param string $filename 文件名 */ public function f_delete($filename) { if (!$this->link) { $this->err_code = 2; return false; } if (@ftp_delete($this->link, $filename)) { return true; } else { $this->err_code = 4; return false; } } /** * 返回给定目录的文件列表 * @param string $dirname 目录地址 * @return array 文件列表数据 */ public function nlist($dirname) { if (!$this->link) { $this->err_code = 2; return false; } if ($list = @ftp_nlist($this->link, $dirname)) { return $list; } else { $this->err_code = 5; return false; } } /** * 在 FTP 服务器上改变当前目录 * @param string $dirname 修改服务器上当前目录 */ public function chdir($dirname) { if (!$this->link) { $this->err_code = 2; return false; } if (@ftp_chdir($this->link, $dirname)) { return true; } else { $this->err_code = 6; return false; } } /** * 获取错误信息 */ public function get_error() { if (!$this->err_code) return false; $err_msg = array( '1'=>'Server can not connect', '2'=>'Not connect to server', '3'=>'Can not delete non-empty folder', '4'=>'Can not delete file', '5'=>'Can not get file list', '6'=>'Can not change the current directory on the server', '7'=>'Can not upload files' ); return $err_msg[$this->err_code]; } /** * 检测目录名 * @param string $url 目录 * @return 由 / 分开的返回数组 */ private function ck_dirname($url) { $url = str_replace('\\', '/', $url); $urls = explode('/', $url); return $urls; } /** * 关闭FTP连接 */ public function close() { return @ftp_close($this->link); } }
阿斯
- ftp_class.zip (3.5 KB)
- 下载次数: 14
发表评论
-
PHP实现Mysql网站安装程序制作
2012-12-19 13:38 1617其实PHP程序的安装原理无非就是将数据库结构和内容导入到相应的 ... -
php接收邮件类
2011-07-18 16:19 7590通过POP3/IMAP / NNTP连接到邮箱,使用PHP ... -
PHP RSS/Feed类库
2011-06-23 14:10 1798通用PHP RSS/Feed 生成类库(支持RSS 1.0/2 ... -
php 生成迅雷快车旋风链接
2011-06-21 16:15 1653<?php function zhuanh ... -
PHP 自动加载对象(以MVC框架为例)
2011-06-20 15:07 5266<?php class autoloader { ... -
php 时间日期工具类 星座/干支/生肖
2011-06-17 17:06 2720如果系统没有设置时区,那么获得的结果是UTC时间,相对中国 ... -
比较全面的php session验证码与防识别
2011-05-17 11:40 3278验证码开发过程中的 3 个误区: 1、 背景干扰: ... -
多语言国际化1
2011-02-23 16:36 1690//======================== ... -
PHP读取配置文件类(php,ini,yaml,xml)
2011-02-18 11:27 3975https://github.com/dannyhu926/p ... -
php zip pdf word rar类库
2011-01-28 13:33 1897pdf2swf+flexpaper解决pdf在线阅读(类百度 ... -
php取得客户端信息类
2011-01-28 11:04 1981<?php /** * * 根据sina ... -
php文件目录操作类
2011-01-28 10:56 3602https://github.com/dannyhu926/p ... -
PHP文件下载类
2011-01-27 11:17 1877<?php /** $filename = 'i ... -
gettext库 多语言国际化2
2011-01-25 15:22 2715通常人们写程序时都是将文字写死在程序里的,比如:echo &q ... -
数据库操作类mysql/mysqli/pdo
2011-01-20 18:48 2243PDO,MYSQL,MYSQLI的各自不同介绍,PDO,M ... -
php数组工具类
2010-11-25 09:14 2016数组《=》对象 /* * 数 ... -
PHP mysql数据库读写分离
2010-11-16 19:25 1522MYSQL的读写分离实现有2种思路 MySQL中间件 用 ... -
PHP邮件发送类
2010-06-17 20:25 3977Swift Mailer 和前面介绍的PHPMailer一 ... -
比较全面的php分页导航类
2010-06-11 15:33 2125瀑布流分页:当浏览者浏览了当前页面内容后,向下拉动浏览器滚动 ... -
php汉字换转成拼音
2010-05-25 14:40 1951<?php /** * PHP 汉字转拼音 ...
相关推荐
FTP类,支持防火墙设置,在vc上面测试通过,可以放心使用
PHP操作FTP类,可以用PHP去操作ftp上的文件等各种操作
VB.net FTP类模块 支持各类FTP操作,上传\下载\删除等
$this->conn_id = @ftp_connect($FTP_HOST,$FTP_PORT) or die("FTP服务器连接失败"); @ftp_login($this->conn_id,$FTP_USER,$FTP_PASS) or die("FTP服务器登陆失败"); @ftp_pasv($this->conn_id,1); ...
visual c++ FTP工具类,支持防火墙设置.zip
C# FTP类的封装,实现FTP上传、下载等等FTP的一些操作,在VS2005下调试成功。
针对PHP操作FTP类进行详细介绍,php实现FTP上传、FTP下载、FTP移动、FTP创建,复制文件,生成文件目录等,并附加一个操作ftp的php文件,供大家学习调用。
Windows Mobile下的FTP类实现,已经通过测试,可以使用
网友“南疯”的一个比较好用的ftp类,支持包括异步的文件上传下载等一系列方法
MSDN上推荐的老外编写FTP类(VFP)
java_ftp类包开发ftp服务器的简易类库
C#封装的完整FTP类
ftp 编程实例 ,包含一个现成的FTP类,方便使用 FTPclient.cpp (c) GDI 1999 V1.0.0 (10/4/99) Phil Anderson. philip@gd-ind.com
PHP FTP类,实现对文件的上传下载 移动 删除 重命名 文件夹的创建 删除
FTP类(已基本实现功能)FTP类(已基本实现功能)FTP类(已基本实现功能)FTP类(已基本实现功能)FTP类(已基本实现功能)
C#的FTP类,包括上传下载更名等,超级好用!
FTP类,支持防火墙设置
一个采用C#编写的FTP类,是文档,用于FTP开发的好东西。
该类存在错误 请下载http://download.csdn.net/source/334678
自己项目里使用过的 FTP类,分享给大家