PHP ftp_nb_fget() Fonction
Exemple
Téléchargez un fichier depuis le serveur FTP et enregistrez-le dans un fichier local ouvert (non-bloquant) :
<?php
// se connecter au serveur FTP
$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Impossible de se connecter à $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
$server_file = "somefile.txt";
// ouvrir le fichier local pour écrire
$local_file = "local.txt";
$fp = fopen($local_file,"w");
// initier le téléchargement
$d = ftp_nb_fget($ftp_conn, $fp, $server_file, FTP_BINARY)
while ($d == FTP_MOREDATA)
{
// faites ce que vous voulez
// continuez à télécharger
$d = ftp_nb_continue($ftp_conn);
}
if ($d != FTP_FINISHED)
{
echo "Erreur lors du téléchargement de $server_file";
exit(1);
}
// fermer la connexion et le gestionnaire de fichiers
ftp_close($ftp_conn);
fclose($fp);
?> Définition et Utilisation
La fonction ftp_nb_fget() permet de télécharger un fichier depuis le serveur FTP et de l'enregistrer dans un fichier local ouvert (non-bloquant).
Astuce : Cette fonction, contrairement à ftp_fget() , récupère le fichier de manière asynchrone, vous permettant ainsi d'effectuer d'autres opérations pendant le téléchargement.
Syntaxe
ftp_nb_fget( ftp_conn, open_file, server_file, mode, startpos ); Valeurs des Paramètres
| Paramètre | Description |
|---|---|
| ftp_conn | Requis. Spécifie la connexion FTP à utiliser. |
| open_file | Requis. Spécifie un fichier local ouvert dans lequel les données seront stockées. |
| server_file | Requis. Spécifie le fichier sur le serveur à télécharger. |
| mode | Optionnel. Spécifie le mode de transfert. Valeurs possibles : FTP_ASCII ou FTP_BINARY. |
| startpos | Optionnel. Spécifie la position dans le fichier distant à partir de laquelle commencer le téléchargement. |
Détails Techniques
| Valeur de Retour : | Une des valeurs suivantes :
|
|---|---|
| Version PHP : | 4.3+ |
| Journal des Modifications PHP : | PHP 7.3 - Le paramètre mode a été rendu optionnel. |