Home » Networking » Net_FTP
Net_FTP provides an OO interface to the PHP FTP functions plus some additions
This package is unmaintained.
Download latest release 1.4.1 (there might be newer Composer installable version)
License: BSD License
Description
Net_FTP allows you to communicate with FTP servers in a more comfortable way
than the native FTP functions of PHP do. The class implements everything natively
supported by PHP and additionally features like recursive up- and downloading,
dircreation and chmodding. It also implements an observer pattern to allow
for example the view of a progress bar.
Documentation
Maintainers
- Jorrit Schippers (jorrit) — lead, active
- Tobias Schlitt (toby) — lead, inactive
Dependencies
Required
- PHP (>= 4.3.0)
- PEAR Installer (>= 1.3.0)
- ftp (extension)
Releases
- 1.4.1 (stable, 2020-09-24)
Release notes
License: BSD License
* Fix regex for lsMatch on unix
- 1.4.0 (stable, 2015-03-11)
Release notes
License: BSD License
* Feature Request 20317: Switch to BSD License.
* Fixed Bug 20096: Package doesn't install because of conflict.
* Validate return of _lsFiles() and _lsDirs() during _rmDirRecursive().
* Handle failed ls() command during chmodRecursive().
* $_file_extensions is prepped with invalid data. - 1.4.0a3 (alpha, 2011-12-10)
Release notes
License: PHP License
* Fixed Bug #13946: Test Failed : testPutRecursive
* Fixed Bug #14513: Timestamp when using the LS function
* Implemented Request #14773: setPassive possible before connecting
* Use markTestSkipped, not fail()
* Fatal error: Cannot redeclare ftp_connect() in ./Net_FTP/Net/FTP/Socket.php
* remove error_reporting (for PEAR QA team) - 1.4.0a2 (alpha, 2008-05-19)
Release notes
License: PHP License
* Fixed Bug #13496: set bit not supported
* Fixed Bug #13689: . in file owner or group name breaks _ls_match
* Fixed Bug #13690: getRecursive does not work because of '.' and '..' directories
* Fixed Bug #13114: Error check in $FTP->getRecursive(...)
* Implemented Request #13104: connect() <> $this->handle in login()
* Fixed Bug #13917: putRecursive always return PEAR::Error
* Fixed Bug #13850: inclusion of Net/FTP.php in tests doesn't always work
* Implemented Request #2271: New flag for _rm_dir_recursive to leave directory structure intact
* Implemented Request #6806: Allow recursive up-/download with only adding newer files - 1.3.7 (stable, 2008-05-19)
- 1.3.6 (stable, 2008-05-06)
- 1.3.5 (stable, 2008-01-13)
- 1.4.0a1 (alpha, 2007-12-22)
Release notes
License: PHP License
* Fixed bug #6754: Add method to set directory list matcher explicitly
* Fixed Bug #7102: Add ability to disable use of ftp_nb_put(), can sometimes be very slow* Improved detection of remote directories. It is slower than before, but does not rely on simply detecting if the given path ends with a slash.
- 1.3.4 (stable, 2007-12-10)
Release notes
License: PHP License
* Fixed Bug #12639: _constructPath() prevents _checkDir() from working correctly
- 1.3.3 (stable, 2007-12-06)
Release notes
License: PHP License
* Fixed Bug #7146: Recursive mkdir() broken on Windows
* Fixed Bug #7270: Recursive rmdir() broken
* Fixed Bug #7527: ls fails if there are no files and a total line
* Fixed Bug #8102: Loading file extension and checking extension gives binary for ascii files
* Fixed Bug #9611: (, ? and ) break detection of the unix platform
* Fixed Bug #10237: put() doesn't run ftp_alloc to allocate space
* PEAR Coding Style Valid
* Removed package.xml version 1.0
* Added some unit tests - 1.3.2 (stable, 2006-02-11)
Release notes
License: PHP License
* Fixed Bug #4102: Problem detecting os method ls().
* Fixed Bug #5337: _list_and_parse behavior with an empty remote directory.
* Fixed Bug #4836: Off-by-one error in regex for Windows directory listings.
* Fixed Bug #4749: ls() fails when connection is closed.
* Fixed Bug #4969: Recursive rm ends in endless loop.
* Fixed Bug #5895: Recursive chmod ends in endless loop. - 1.3.1 (stable, 2005-04-07)
Release notes
License: PHP License
* Fix bug #3778 "Notice of Uninitialized string offset in function _rm_dir_recursive"
* Fix bug #4008 "_list_and_parse tries to determine OS on an empty list"
* Fix bug #4009 "_determine_os_match doesn't take into account numbered users and groups" - 1.3.0 (stable, 2005-03-31)
Release notes
License: PHP License
- Updated year.
- Updated docblocks regarding the new standard.
- Fixed whitespace issues.
- Fixed bug 3362: bug in Net_FTP::_rm_file.
- Added PEAR 1.4 compatible package2.xml (package.xml version 2.0). - 1.3.0RC2 (beta, 2005-01-04)
- 1.3.0RC1 (stable, 2004-09-23)
- 1.3.0beta4 (beta, 2004-06-28)
- 1.3.0beta3 (beta, 2004-05-25)
- 1.3.0beta2 (beta, 2004-03-20)
- 1.3.0beta1 (beta, 2004-03-14)
- 1.2 (stable, 2003-09-29)
- 1.1 (stable, 2003-07-22)
- 1.0 (stable, 2003-07-15)
- 0.9 (beta, 2003-02-21)
- 0.5 (alpha, 2002-12-20)
Bugs
| ID | Status | Type | Version | Date | Summary |
|---|---|---|---|---|---|
| #36 | Closed | Bug | 2003-09-26 | Typo in Constructor | |
| #238 | Bogus | Bug | 2003-11-13 | Net_FTP dont accept absolute file path | |
| #240 | Closed | Bug | 2003-11-13 | mkdir() with $recursive===true doesn't support "single" directories | |
| #263 | Closed | Bug | 2003-11-16 | Net_FTP listing errors | |
| #336 | Closed | Bug | 2003-12-02 | ftp_login displays Warning | |
| #440 | Closed | Bug | 2003-12-16 | Notice appears | |
| #622 | Closed | Bug | 2004-01-24 | ls() method throws's out errors | |
| #723 | Closed | Bug | 2004-02-10 | Timeout for connect cannot be set | |
| #813 | Closed | Bug | 2004-02-20 | ftp_nb_put function abort when mode is null | |
| #918 | Closed | Bug | 2004-02-27 | getRecursive() corrupts binary file | |
| #983 | Closed | Bug | 2004-03-09 | Code syntax error | |
| #1051 | Bogus | Bug | 2004-03-22 | Ftp getRecursive hangs | |
| #1176 | Closed | Bug | 2004-04-10 | Net_FTP::ls can return dates in the future | |
| #1445 | Closed | Bug | 2004-05-19 | Improvement of setTimeout() method + timout handling | |
| #1446 | Closed | Bug | 2004-05-19 | Bug in isPassive() | |
| #1480 | Closed | Bug | 2004-05-24 | _list_and_parse() may throw warnings | |
| #1938 | Wont fix | Req | 2004-07-21 | wrong param-order for get- ond put-method | |
| #2210 | Closed | Bug | 2004-08-24 | line 258 has a typo | |
| #2268 | Closed | Bug | 2004-09-01 | getRecursive does not work because of '.' and '..' directories | |
| #2271 | Closed | Req | 2004-09-02 | New flag for _rm_dir_recursive to leave directory structure intact | |
| #2467 | Closed | Bug | 2004-10-06 | Problems with recursive mkdir | |
| #2647 | Closed | Bug | 2004-10-29 | CS issues | |
| #2648 | Closed | Bug | 2004-10-29 | if ls() returns array(), net_FTP bails | |
| #2654 | Closed | Bug | 2004-10-31 | mkdir() should not fail if the directory already exists | |
| #2843 | Closed | Bug | 2004-11-28 | 'ftp' PHP extension is not installed | |
| #3362 | Closed | Bug | 2005-02-02 | bug in Net_FTP::_rm_file | |
| #3609 | Bogus | Bug | 2005-02-26 | Net_FTP 1.3.0 won't install with PEAR 1.4.0a1 without force | |
| #3681 | Closed | Bug | 2005-03-03 | bad md5sum for file /usr/local/lib/php/data/Net_FTP/package2.xml | |
| #3778 | Closed | Bug | 2005-03-11 | Notice of Uninitialized string offset in function _rm_dir_recursive | |
| #4008 | Closed | Bug | 2005-03-30 | _list_and_parse tries to determine OS on an empty list | |
| #4009 | Closed | Bug | 2005-03-30 | _determine_os_match doesn't take into account numbered users and groups | |
| #4102 | Closed | Bug | 2005-04-08 | Problem detecting os method ls() | |
| #4389 | No Feedback | Bug | 2005-05-19 | PutRecurrsive crashes when it meets a fake directory | |
| #4749 | Closed | Bug | 2005-07-05 | ls() fails when connection is closed | |
| #4836 | Closed | Bug | 2005-07-14 | Off-by-one error in regex for Windows directory listings | |
| #4969 | Closed | Bug | 2005-08-02 | Recursive rm ends in endless loop | |
| #5337 | Closed | Bug | 2005-09-08 | _list_and_parse behavior with an empty remote directory | |
| #5613 | Bogus | Bug | 2005-10-06 | wrong directory output with ls | |
| #5895 | Closed | Bug | 2005-11-08 | Recursive chmod ends in endless loop | |
| #6236 | Bogus | Bug | 2005-12-13 | Cant install Net_FTP | |
| #6754 | Closed | Bug | 1.3.2 | 2006-02-11 | SCO Openserver matched as WINDOWS |
| #6806 | Closed | Req | 1.3.2 | 2006-02-17 | Allow recursive up-/download with only adding newer files |
| #7102 | Closed | Bug | CVS | 2006-03-12 | Usage of ftp_nb_put() in FTP::put() is incredibly slow |
| #7146 | Closed | Bug | 1.3.2 | 2006-03-17 | Recursive mkdir fails on Windows |
| #7270 | Closed | Bug | 1.3.2 | 2006-03-31 | rm_dir recursive |
| #7527 | Closed | Bug | 1.3.2 | 2006-04-30 | ls fails if there isn't a file/directory |
| #7685 | Closed | Bug | 1.3.2 | 2006-05-21 | same error code |
| #7786 | Spam | Req | CVS | 2006-06-01 | vladi |
| #8102 | Closed | Bug | 1.3.2 | 2006-07-02 | Loading file extension and checking extension gives binary for ascii files |
| #9478 | Spam | Bug | 1.3.2 | 2006-11-27 | not fung |
| #9611 | Closed | Bug | 2006-12-14 | Wrong OS determing! | |
| #10068 | Wont fix | Req | CVS | 2007-02-10 | Callback for recursive methods |
| #10237 | Closed | Bug | CVS | 2007-03-01 | put doesn't run ftp_alloc to allocate space |
| #11480 | Bogus | Req | 1.3.2 | 2007-06-29 | Extended passive mode |
| #11623 | No Feedback | Bug | 1.3.2 | 2007-07-17 | Uninitialized string offset using getRecursive |
| #12639 | Closed | Bug | 1.3.3 | 2007-12-08 | Net_FTP rm() method problem |
| #12840 | Closed | Bug | 1.3.4 | 2008-01-06 | wrong PHP-Version in dependency |
| #13104 | Closed | Req | 1.3.5 | 2008-02-12 | connect() <> $this->handle in login() |
| #13496 | Closed | Bug | 1.3.5 | 2008-03-25 | set bit not supported |
| #13689 | Closed | Bug | 1.3.5 | 2008-04-15 | . in file owner or group name breaks _ls_match |
| #13690 | Closed | Bug | 1.3.5 | 2008-04-16 | getRecursive does not work because of '.' and '..' directories |
| #13850 | Closed | Bug | CVS | 2008-05-08 | inclusion of Net/FTP.php in tests doesn't always work |
| #13917 | Closed | Bug | 1.3.6 | 2008-05-16 | putRecursive always return PEAR::Error |
| #13946 | Closed | Bug | 1.3.7 | 2008-05-20 | Test Failed : testPutRecursive |
| #14513 | Closed | Bug | 1.3.7 | 2008-08-18 | Timestamp when using the LS function |
| #14773 | Closed | Req | 1.3.7 | 2008-10-10 | Behaviour of method setPassive() |
| #14817 | Closed | Req | CVS | 2008-10-17 | Use markTestSkipped, not fail() |
| #15128 | Closed | Req | CVS | 2008-11-22 | Fatal error: Cannot redeclare ftp_connect() in ./Net_FTP/Net/FTP/Socket.php on |
| #16408 | Wont fix | Req | 1.4.0a2 | 2009-07-06 | More reliable file download |
| #16661 | Open | Req | CVS | 2009-09-30 | Add unitests to cover Net/FTP/Socket.php |
| #19010 | Closed | Bug | SVN | 2011-11-14 | remove error_reporting (for PEAR QA team) |
| #19725 | Closed | Req | 1.4.0a3 | 2012-11-28 | Enhancement: Support file and directory exclusions in putRecursive and getRecur |
| #19758 | Open | Req | 1.3.7 | 2012-12-19 | Add http_proxy |
| #20088 | Bogus | Bug | 1.4.0a3 | 2013-10-07 | missing file config.php |
| #20096 | Closed | Bug | 1.4.0a3 | 2013-10-13 | Package doesn't install because of conflict |
| #20317 | Bogus | Req | 1.4.0 | 2014-06-26 | Would you consider changing the license to another BSD style license? |
| #20547 | Open | Bug | 1.4.0 | 2015-05-12 | Change in date/time output - array breakout |