ftp_nb_put

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_put -- Envoie un fichier sur le serveur FTP (non-bloquant)

Description

int ftp_nb_put ( resource ftp_stream, string remote_file, string local_file, int mode [, int startpos])

ftp_nb_put() écrit le fichier remote_file présent sur la machine locale, sur le serveur FTP ftp_stream, puis lui donne le nom de handle. Le mode de transfert mode spécifié peut être FTP_ASCII ou FTP_BINARY. La différence entre cette fonction et ftp_fput() 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é.

Retourne FTP_FAILED, FTP_FINISHED, ou FTP_MOREDATA.

Exemple 1. Exemple avec ftp_nb_put()

<?php

/* Initialisation */
$ret = ftp_nb_put($my_connection, "test.remote", "test.local", FTP_BINARY);
while (
$ret == FTP_MOREDATA) {
   
   
/* Faîtes ce que vous voulez ici */
   
echo ".";

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

Exemple 2. Reprendre un chargement avec ftp_nb_put()

<?php

/* Initialisation */
$ret = ftp_nb_put ($my_connection, "test.remote", "test.local",
                      
FTP_BINARY, ftp_size("test.remote"));
// ou bien : $ret = ftp_nb_put ($my_connection, "test.remote", "test.local",
//                           FTP_BINARY, FTP_AUTORESUME);

while ($ret == FTP_MOREDATA) {
   
   
/* Faîtes ce que vous voulez ici */
   
echo ".";

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

Voir aussi ftp_nb_fput(), ftp_nb_continue(), ftp_put() et ftp_fput().