Example
Download a file from the FTP server, and save it to an open local file (non-blocking):
<?php
// connect and login to FTP server
$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or
die("Could not connect to $ftp_server");
$login
= ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
$server_file =
"somefile.txt";
// open local file to write to
$local_file =
"local.txt";
$fp = fopen($local_file,"w");
// initiate download
$d = ftp_nb_fget($ftp_conn,
$fp, $server_file, FTP_BINARY)
while ($d == FTP_MOREDATA)
{
// do whatever you want
// continue downloading
$d = ftp_nb_continue($ftp_conn);
}
if ($d != FTP_FINISHED)
{
echo "Error downloading
$server_file";
exit(1);
}
// close connection and file
handler
ftp_close($ftp_conn);
fclose($fp);
?>
Definition and Usage
The ftp_nb_fget() function gets (downloads) a file from the FTP server, and saves it into an open local file (non-blocking).
Tip: This function (as opposite to ftp_fget()) retrieves the file asynchronously, so you can perform other operations while the file is being downloaded.
Syntax
ftp_nb_fget(ftp_connection,open_file,server_file,mode,startpos);
Parameter | Description |
---|---|
ftp_connection | Required. Specifies the FTP connection to use |
open_file | Required. Specifies an open local file in which we store the data |
server_file | Required. Specifies the server file to download |
mode | Required. Specifies the transfer mode. Possible values: FTP_ASCII or FTP_BINARY |
startpos | Optional. Specifies the position in the remote file to start downloading from |
Technical Details
Return Value: | This function returns one of the following values:
|
---|---|
PHP Version: | 4.3+ |
< PHP FTP Reference