ftp_nb_put

(PHP 4 >= 4.3.0, PHP 5, PHP 7)
Stores a file on the FTP server (non-blocking)
int ftp_nb_put ( resource $ftp_stream, string $remote_file, string $local_file, int $mode [, int $startpos = 0 ] )

ftp_nb_put() stores a local file on the FTP server.

The difference between this function and the ftp_put() is that this function uploads the file asynchronously, so your program can perform other operations while the file is being uploaded.

Parameters:
ftp_stream

The link identifier of the FTP connection.

remote_file

The remote file path.

local_file

The local file path.

mode

The transfer mode. Must be either FTP_ASCII or FTP_BINARY.

startpos

The position in the remote file to start uploading to.

Returns:

Returns FTP_FAILED or FTP_FINISHED or FTP_MOREDATA.

Examples:
ftp_nb_put() example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 
// Initiate the Upload
$ret = ftp_nb_put($my_connection"test.remote""test.local", FTP_BINARY);
while ($ret == FTP_MOREDATA) {
    
   // Do whatever you want
   echo ".";
 
   // Continue uploading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>
Resuming an upload with ftp_nb_put()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
// Initiate
$ret = ftp_nb_put($my_connection"test.remote""test.local"
                      FTP_BINARY, ftp_size("test.remote"));
// OR: $ret = ftp_nb_put($my_connection, "test.remote", "test.local", 
//                           FTP_BINARY, FTP_AUTORESUME);
 
while ($ret == FTP_MOREDATA) {
    
   // Do whatever you want
   echo ".";
 
   // Continue uploading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>
See also:

ftp_nb_fput() -

ftp_nb_continue() -

ftp_put() -

ftp_fput() -

doc_php
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.