ftp_nb_fput

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_fput -- Salva um arquivo aberto para um servidor FTP(sem bloquear)

Descrição

int ftp_nb_fput ( resource ftp_stream, string arquivo_remoto, resource handle, int modo [, int startpos] )

ftp_nb_fput() envia os dados do ponteiro de arquivo handle até o final do arquivo. O resultado é guardado no arquivo_remoto no servidor FTP. O modo de transferência especificado deve ser FTP_ASCII ou FTP_BINARY. A diferença entre esta função e a função ftp_fput() é que esta função envia o arquivo sem sincronia, então o seu programa pode realizar outras operações enquando o arquivo esta sendo enviado.

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

// Começa o upload
$ret = ftp_nb_fput($conn_id, $file, $fp, FTP_BINARY);
while (
$ret == FTP_MOREDATA) {

   
// Faça o que você quiser
   
echo ".";

   
// Continue o upload...
   
$ret = ftp_nb_continue($conn_id);
}
if (
$ret != FTP_FINISHED) {
   echo
"Houve um erro ao fazer o upload do arquivo...";
   exit(
1);
}

fclose($fp);
?>

Retorna FTP_FAILED, FTP_FINISHED, ou FTP_MOREDATA.

Veja também ftp_nb_put(), ftp_nb_continue(), ftp_put() e ftp_fput().