The functions in this extension implement client access to file
servers speaking the File Transfer Protocol (FTP) as defined in
http://www.faqs.org/rfcs/rfc959. This extension is
meant for detailed access to an FTP server providing a wide range
of control to the executing script. If you only wish to
read from or write to a file on an FTP server, consider using
the ftp:// wrapper
with the filesystem functions
which provide a simpler and more intuitive interface.
No external libraries are needed to build this extension.
In order to use FTP functions with your PHP configuration, you should
add the --enable-ftp option when
installing PHP 4 or greater or --with-ftp
when using PHP 3.
The windows version of PHP has built in
support for this extension. You do not need to load any additional
extension in order to use these functions.
This extension has no configuration directives defined in php.ini.
The constants below are defined by this extension, and
will only be available when the extension has either
been compiled into PHP or dynamically loaded at runtime.
The following constants were introduced in PHP 4.3.0.
- FTP_AUTOSEEK
(integer)
See ftp_set_option() for information.
- FTP_AUTORESUME
(integer)
Automatically determine resume position and start position for GET and PUT requests
(only works if FTP_AUTOSEEK is enabled)
- FTP_FAILED
(integer)
Asynchronous transfer has failed
- FTP_FINISHED
(integer)
Asynchronous transfer has finished
- FTP_MOREDATA
(integer)
Asynchronous transfer is still active
Example 1. FTP example <?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
}
// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
// check upload status
if (!$upload) {
echo "FTP upload has failed!";
} else {
echo "Uploaded $source_file to $ftp_server as $destination_file";
}
// close the FTP stream
ftp_close($conn_id);
?> |
|