rjkip / ftp-php
此包已被废弃,不再维护。未建议替代包。
此包最新版本(v1.1.0)没有可用的许可证信息。
一个用于访问FTP服务器的简单易用的库。
v1.1.0
2014-01-13 19:24 UTC
Requires
- php: >=5.3
This package is not auto-updated.
Last update: 2020-08-21 17:43:06 UTC
README
FTP for PHP (c) David Grudl, 2008 (http://davidgrudl.com)
介绍
FTP for PHP 是一个非常小且易于使用的用于访问 FTP 服务器的库。
David Grudl 在 GoogleCode 上的项目:http://ftp-php.googlecode.com
David Grudl 的 PHP 博客:http://phpfashion.com
要求
- PHP 5.3+
安装
通过 Composer 安装 FtpPhp
。只需指定 rjkip/ftp-php
作为依赖项。
用法
打开到指定主机的 FTP 连接
<?php require "vendor/autoload.php"; use FtpPhp\FtpClient; use FtpPhp\FtpException; $ftp = new FtpClient; $ftp->connect($host);
使用用户名和密码登录
<?php $ftp->login($username, $password);
您也可以将 URI 传递给构造函数,如下所示
<?php $ftp = new FtpClient("ftp://user:password@host/path");
<?php $arr = $ftp->nlist(); foreach ($arr as $value) { echo $value.PHP_EOL; }
上传文件
<?php $ftp->put($destination_file, $source_file, FtpClient::BINARY);
关闭 FTP 流
<?php # Connection is also closed when `$ftp` goes out of scope. $ftp->close();
Ftp 在操作失败时抛出异常。所以您可以简单地这样做
<?php try { $ftp = new FtpClient; $ftp->connect($host); $ftp->login($username, $password); $ftp->put($destination_file, $source_file, FtpClient::BINARY); } catch (FtpException $e) { echo 'Error: ', $e->getMessage(); }
另一方面,如果您想静默地捕获可能的异常,请调用带有前缀 'try' 的方法
<?php $ftp->tryDelete($destination_file);
当连接意外中断时,您可以使用方法 $ftp->reconnect()
重新建立连接。
变更日志
v1.1.0 - 2014-01-13
- 为所有 FtpPhp 异常引入一个基本异常类。这不应该破坏您的任何异常处理,除非您直接依赖于
FtpException
扩展\Exception
。 - 所有类在很大程度上符合 PSR-2。
- 更新 docblocks 以满足 PhpStorm。