(PHP 4 >= 4.3.0, PHP 5)
ftp_nb_fput — Stores a file from an open file to the FTP server (non-blocking)
ftp_nb_fput() uploads the data from a file pointer to a remote file on the FTP server.
The difference between this function and the ftp_fput() is that this function uploads the file asynchronously, so your program can perform other operations while the file is being uploaded.
The link identifier of the FTP connection.
The remote file path.
An open file pointer on the local file. Reading stops at end of file.
The transfer mode. Must be either FTP_ASCII or FTP_BINARY.
The position in the remote file to start uploading to.
Returns FTP_FAILED or FTP_FINISHED or FTP_MOREDATA.
Example #1 ftp_nb_fput() example
<?php
$file = 'index.php';
$fp = fopen($file, 'r');
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// Initate the upload
$ret = ftp_nb_fput($conn_id, $file, $fp, FTP_BINARY);
while ($ret == FTP_MOREDATA) {
// Do whatever you want
echo ".";
// Continue upload...
$ret = ftp_nb_continue($conn_id);
}
if ($ret != FTP_FINISHED) {
echo "There was an error uploading the file...";
exit(1);
}
fclose($fp);
?>