ftp_nb_fget

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_fget -- Obtém um arquivo de um servidor FTP e escreve para um ponteiro de arquivo (sem bloquear)

Descrição

int ftp_nb_fget ( resource ftp_stream, resource handle, string arquivo_remoto, int modo [, int resumepos] )

A função ftp_nb_fget() obtém arquivo_remoto apartir de um servidor FTP, e o escreve para o ponteiro de arquivo indicado, handle. O modo de transferência deve ser FTP_ASCII ou FTP_BINARY. A diferença entre esta função e a função ftp_fget() é que esta função obtém o arquivo sem sincronia, então o seu programa pode realizar outras operações enquando o arquivo esta sendo obtido.

Exemplo 1. Exemplo ftp_nb_fget()

<?php

// abre algum arquivo para leitura
$file = 'index.php';
$fp = fopen($file, 'w');

$conn_id = ftp_connect($ftp_server);

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// começa o download
$ret = ftp_nb_fget($conn_id, $fp, $file, FTP_BINARY);
while (
$ret == FTP_MOREDATA) {

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

   
// continue baixando...
   
$ret = ftp_nb_continue($conn_id);
}
if (
$ret != FTP_FINISHED) {
   echo
"Houve um erro ao baixar o arquivo...";
   exit(
1);
}

// fecha o ponteiro do arquivo
fclose($fp);
?>

Retorna FTP_FAILED, FTP_FINISHED, ou FTP_MOREDATA.

Veja também ftp_nb_get(), ftp_nb_continue(), ftp_fget() e ftp_get().