(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
ftp_nb_fput — Escribe un fichero en un servidor FTP, y lo lee desde un fichero (no bloqueante)
$ftp
,$remote_filename
,$stream
,$mode
= FTP_BINARY
,$offset
= 0
ftp_nb_fput() escribe el fichero remote_filename
presente en la máquina local, en el servidor FTP ftp
.
La diferencia entre esta función y ftp_fput() es que esta función puede leer el fichero de manera asíncrona, para que su programa realice otras tareas mientras el fichero se descarga.
ftp
An FTP\Connection instance.
remote_filename
La ruta hacia el fichero remoto.
stream
Un puntero de fichero hacia un fichero local. La lectura se detiene al final del fichero.
mode
El modo de transferencia. Debe ser FTP_ASCII
o
FTP_BINARY
.
offset
La posición en el fichero remoto desde la cual comenzará la descarga.
Devuelve FTP_FAILED
, FTP_FINISHED
o FTP_MOREDATA
.
Versión | Descripción |
---|---|
8.1.0 |
The ftp parameter expects an FTP\Connection
instance now; previously, a recurso was expected.
|
7.3.0 |
El argumento mode ahora es opcional. Anteriormente era obligatorio.
|
Ejemplo #1 Ejemplo con ftp_nb_fput()
<?php
$file = 'index.php';
$fp = fopen($file, 'r');
$ftp = ftp_connect($ftp_server);
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
// Inicia la subida
$ret = ftp_nb_fput($ftp, $file, $fp, FTP_BINARY);
while ($ret == FTP_MOREDATA) {
// Realice lo que desee...
echo ".";
// Continúa la subida...
$ret = ftp_nb_continue($ftp);
}
if ($ret != FTP_FINISHED) {
echo "Ocurrió un problema durante la subida del fichero...";
exit(1);
}
fclose($fp);
?>