PHP ftp_nb_fget() Function

PHP FTP Reference PHP FTP Reference


Download a file from the FTP server, and save it to an open local file (non-blocking):

// connect and login to FTP server
$ftp_server = "";
$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";

// close connection and file handler

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.  



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:
  • FTP_FAILED (send/receive failed)
  • FTP_FINISHED (send/receive completed)
  • FTP_MOREDATA (send/receive in progress)
PHP Version: 4.3+

PHP FTP Reference PHP FTP Reference


Color Picker