ftp_nb_fget

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_fget -- Lit un fichier sur un serveur FTP, et l'écrit dans un fichier (non bloquant)

Description

int ftp_nb_fget ( resource ftp_stream, resource handle, string remote_file, int mode [, int resumepos])

ftp_nb_fget() lit le fichier remote_file présent sur le serveur FTP ftp_stream, puis écrit ce fichier dans le pointeur de fichier handle. Le mode de transfert mode spécifié peut être FTP_ASCII ou FTP_BINARY. La différence entre cette fonction et ftp_fget() est que cette fonction peut lire le fichier de manière asynchrone, afin que votre programme fasse autre chose pendant que le fichier est téléchargé.

Exemple 1. Exemple avec ftp_nb_fget()

<?php

/* Ouverture d'un fichier en lecture */
$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);

/* Initialise le téléchargement */
$ret = ftp_nb_fget($conn_id, $fp, $file, FTP_BINARY);
while (
$ret == FTP_MOREDATA) {

   
/* Faîte ce que vous voulez ici */
   
echo '.';

   
/* Continue le téléchargement... */
   
$ret = ftp_nb_continue($conn_id);
}
if (
$ret != FTP_FINISHED) {
   echo
'Une erreur est survenue pendant le téléchargement du fichier...';
   exit(
1);
}

/* Fermeture du fichier */
fclose($fp);
?>

Retourne FTP_FAILED, FTP_FINISHED, ou FTP_MOREDATA.

Voir aussi ftp_nb_get(), ftp_nb_continue(), ftp_fget() et ftp_get().