(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)
ftp_nb_fget() lit le fichier remote_file présent sur le serveur FTP ftp_stream .
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é.
L'identifiant du lien de connexion FTP.
Un pointeur de fichier ouvert dans lequel les données sont écrites.
Le chemin vers le fichier distant.
Le mode de transfert. Doit être soir FTP_ASCII ou FTP_BINARY.
Retourne FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.
Exemple #1 Exemple avec ftp_nb_fget()
<?php
// Ouverture de quelques fichiers pour 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) {
// Faites ce que vous voulez...
echo ".";
// Continue le téléchargement...
$ret = ftp_nb_continue($conn_id);
}
if ($ret != FTP_FINISHED) {
echo "Il y a eu une erreur pendant le téléchargement du fichier...";
exit(1);
}
// Ferme le pointeur de fichier
fclose($fp);
?>