PHP FTPFunctions


PHP FTP Introduction

The FTP functions provide client access to file servers through the File Transfer Protocol (FTP).

The FTP functions are used to open, log in, and close connections, as well as to upload, download, rename, delete, and retrieve file information on file servers. Not all FTP functions work or return the same results on every server. FTP functions have been available since PHP 3.

These functions are used for fine-grained access to FTP servers. If you only need to perform read and write operations on an FTP server, it is recommended to use the ftp:// wrapper in the Filesystem functions.


Installation

The Windows version of PHP has built-in support for the FTP extension. No additional extension libraries need to be loaded to use the FTP functions.

However, if you are running a Linux version of PHP, please add the following when compiling PHP:--enable-ftp option (PHP4 or above) or--with-ftpoption (PHP3 version).


PHP FTP Functions

PHP: Indicates the earliest PHP version that supports this function.

Functions Description PHP
ftp_alloc() Allocates space for a file to be uploaded to the FTP server. 5
ftp_cdup() Changes the current directory to the parent directory on the FTP server. 3
ftp_chdir() Changes the current directory on the FTP server. 3
ftp_chmod() Sets permissions on a file via FTP. 5
ftp_close() Closes an FTP connection. 4
ftp_connect() Opens an FTP connection. 3
ftp_delete() Deletes a file on the FTP server. 3
ftp_exec() Executes a program/command on the FTP server. 4
ftp_fget() Downloads a file from the FTP server and saves it to a locally opened file. 3
ftp_fput() Uploads an open file and saves it as a file on the FTP server. 3
ftp_get_option() Returns various runtime options for the FTP connection. 4
ftp_get() Downloads a file from the FTP server. 3
ftp_login() Logs in to the FTP server. 3
ftp_mdtm() Returns the last modified time of the specified file. 3
ftp_mkdir() Creates a new directory on the FTP server. 3
ftp_nb_continue() Continues retrieving/sending files. (Non-blocking) 4
ftp_nb_fget() Downloads a file from the FTP server and saves it to a locally opened file. (Non-blocking) 4
ftp_nb_fput() Uploads an open file and saves it as a file on the FTP server. (Non-blocking) 4
ftp_nb_get() Downloads a file from the FTP server. (Non-blocking) 4
ftp_nb_put() Uploads a file to the FTP server. (Non-blocking) 4
ftp_nlist() Returns a list of files in the specified directory on the FTP server. 3
ftp_pasv() Turns passive mode on or off. 3
ftp_put() Uploads a file to the FTP server. 3
ftp_pwd() Returns the name of the current directory. 3
ftp_quit() Alias of ftp_close(). 3
ftp_raw() Sends a raw command to the FTP server. 5
ftp_rawlist() Returns a detailed list of files in the specified directory. 3
ftp_rename() Renames a file or directory on the FTP server. 3
ftp_rmdir() Removes a directory on the FTP server. 3
ftp_set_option() Sets various runtime options for the FTP connection. 4
ftp_site() Sends a SITE command to the server. 3
ftp_size() Returns the size of the specified file. 3
ftp_ssl_connect() Opens a secure SSL-FTP connection. 4
ftp_systype() Returns the system type identifier of the FTP server. 3


PHP FTP Constants

PHP: Indicates the earliest PHP version that supports this constant.

Constants Description PHP
FTP_ASCII 3
FTP_TEXT 3
FTP_BINARY 3
FTP_IMAGE 3
FTP_TIMEOUT_SEC 3
FTP_AUTOSEEK 4
FTP_AUTORESUME Automatically determines the resume and start positions for GET and PUT requests. 4
FTP_FAILED Asynchronous transfer failed. 4
FTP_FINISHED Asynchronous transfer succeeded. 4
FTP_MOREDATA Asynchronous transfer is active. 4
Other Extensions