ftp_fget
(PHP 4, PHP 5, PHP 7, PHP 8)
ftp_fget — Downloads a file from the FTP server and saves to an open file
Description
FTP\Connection
$ftp,resource
$stream,string
$remote_filename,int
$mode = FTP_BINARY,int
$offset = 0): bool
ftp_fget() retrieves remote_filename
from the FTP server, and writes it to the given file pointer.
Parameters
-
ftp -
An FTP\Connection instance.
-
stream -
An open file pointer in which we store the data.
-
remote_filename -
The remote file path.
-
mode -
The transfer mode. Must be either
FTP_ASCIIorFTP_BINARY. -
offset -
The position in the remote file to start downloading from.
Return Values
Returns true on success or false on failure.
Changelog
| Version | Description |
|---|---|
| 8.1.0 |
The ftp parameter expects an FTP\Connection
instance now; previously, a resource was expected.
|
| 7.3.0 |
The mode parameter is now optional. Formerly it
has been mandatory.
|
Examples
Example #1 ftp_fget() example
<?php
// path to remote file
$remote_file = 'somefile.txt';
$local_file = 'localfile.txt';
// open some file to write to
$handle = fopen($local_file, 'w');
// set up basic connection
$ftp = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
// try to download $remote_file and save it to $handle
if (ftp_fget($ftp, $handle, $remote_file, FTP_ASCII, 0)) {
echo "successfully written to $local_file\n";
} else {
echo "There was a problem while downloading $remote_file to $local_file\n";
}
// close the connection and the file handler
ftp_close($ftp);
fclose($handle);
?>
See Also
- ftp_get() - Downloads a file from the FTP server
- ftp_nb_get() - Retrieves a file from the FTP server and writes it to a local file (non-blocking)
- ftp_nb_fget() - Retrieves a file from the FTP server and writes it to an open file (non-blocking)

