PHP ftp_nb_get()

La fonction ftp_nb_get() est une fonction intégrée en PHP qui récupère (télécharge) un fichier du serveur FTP de manière asynchrone (non bloquant) et l’enregistre dans un fichier local.
 

Syntaxe
ftp_nb_get(conn, local_file, server_file, mode, pos)

 
 

Paramètres
  • conn(Obligatoire) : Spécifie la connexion FTP à utiliser.
  • local_file(Obligatoire) : Spécifie un fichier local dans lequel nous stockons les données.
  • server_file(Optionnel) : Spécifie le fichier dans le serveur à télécharger.
  • mode(Optionnel) : Spécifie le mode de transfert. Les valeurs possibles: FTP_ASCII ou FTP_BINARY.
  • pos(Optionnel) : Spécifie la position dans le fichier distant à partir duquelle commencer le téléchargement.

 

Valeur de retour

La fonction renvoie une des valeurs suivantes:

  • FTP_FAILED (l’envoi ou la réception a échoué)
  • FTP_FINISHED (l’envoi ou la réception terminé)
  • FTP_MOREDATA (l’envoi ou la réception en cours)

 

Version PHP:

4.3+
 

Exemple :

Le code suivant télécharge le fichier à partir du serveur FTP de manière asynchrone (non bloquant) et enregistre-le dans un fichier local, le fichier « file.txt » est un fichier local, tandis que « test.txt » est un fichier serveur :

<?php
// Se connecter au serveur
$con = ftp_connect('192.168.10.10');

$login = ftp_login($con, 'test', 'test');

// lancer le téléchargement
$res = ftp_nb_get($con, "file.txt", "test.txt", FTP_BINARY)
while ($res == FTP_MOREDATA) {
    // continue le téléchargement 
    echo "Le fichier est en cours de téléchargement!";
    $r = ftp_nb_continue($con);
}
if ($r != FTP_FINISHED) {
    echo "Erreur lors du téléchargement du fichier!";
    exit(1);
}

// Fermer la connexion
ftp_close($con);
?>
Questions d'entretiens PHP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *