PHP ftp_nb_fput()
La fonction ftp_nb_fput() est une fonction intégrée en PHP qui Upload un fichier local ouvert sur le serveur FTP de manière asynchrone (non bloquant).
Syntaxe
ftp_nb_fput(conn, server_file, local_file, mode, pos)
Paramètres
- conn(Obligatoire) : Spécifie la connexion FTP à utiliser.
- server_file(Optionnel) : Spécifie le fichier à uploader sur le serveur.
- local_file(Obligatoire) : Spécifie un fichier local.
- 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 l’upload.
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 Upload le fichier sur le serveur FTP de manière asynchrone (non bloquant), 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'); $local_file = "file.txt"; $fp = fopen($local_file,"r"); // lancer l'Upload $res = ftp_nb_fput($con, "test.txt", $fp, FTP_BINARY) while ($res == FTP_MOREDATA) { // continue l'Upload echo "Uploading..."; $r = ftp_nb_continue($con); } if ($r != FTP_FINISHED) { echo "Erreur lors de l'Upload du fichier!"; exit(1); } // Fermer la connexion ftp_close($con); ?>