(PHP 4 >= 4.3.0, PHP 5, PHP 7)
ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
$ftp_stream
, string $remote_file
, resource $handle
, int $mode
[, int $startpos
] )ftp_nb_fput() envia os dados do ponteiro de arquivo para o arquivo remoto no servidor FTP.
A diferença entra esta função e ftp_fput() é que esta função envia o arquivo de forma assimcronoma, assim o seu programa pode realizar outras operações enquanto o arquivo esta sendo carregado.
ftp_stream
O identificador da conexão FTP.
remote_file
O caminho para o arquivo remoto.
handle
Um ponteiro de arquivo aberto para o arquivo local. A leitura termina ao finbal do arquivo.
mode
O modo de transferência. Deve ser FTP_ASCII
ou
FTP_BINARY
.
startpos
Retorna FTP_FAILED
ou FTP_FINISHED
ou FTP_MOREDATA
.
Exemplo #1 Exemplo ftp_nb_fput()
<?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);
?>