Latest web development tutorials
 

PHP ftp_nb_put() Function

< PHP FTP Reference

Example

Upload local file (non-blocking) to a file on the FTP server:

<?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);

$local_file = "localfile.txt";
$server_file = "serverfile.txt";

// initiate upload
$d = ftp_nb_put($ftp_conn, $server_file, $local_file, FTP_BINARY)

while ($d == FTP_MOREDATA)
  {
  // do whatever you want
  // continue uploading
  $d = ftp_nb_continue($ftp_conn);
  }

if ($d != FTP_FINISHED)
  {
  echo "Error uploading $local_file";
  exit(1);
  }

// close connection
ftp_close($ftp_conn);
?>

Definition and Usage

The ftp_nb_put() function uploads a file to the FTP server (non-blocking).

Tip: This function (as opposite to ftp_put()) retrieves the file asynchronously, so you can perform other operations while the file is being downloaded.   


Syntax

ftp_nb_put(ftp_connection,remote_file,local_file,mode,startpos);

Parameter Description
ftp_connection Required. Specifies the FTP connection to use
remote_file Required. Specifies the file path to upload to
local_file Required. Specifies the path of the local file to upload
mode Required. Specifies the transfer mode. Possible values: FTP_ASCII or FTP_BINARY
startpos Optional. Specifies the position in the remote file to start uploading to

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