ftp_nb_get -- Recupera un archivo desde el servidor FTP y lo
escribe sobre un archivo local (modo no-bloqueo)
Descripción
int ftp_nb_get ( resource secuencia_ftp, string archivo_local, string archivo_remoto, int modo [, int pos_continuacion])
ftp_nb_get() recupera
el archivo_remoto desde el servidor FTP, y lo
guarda localmente
en archivo_local. El modo
de transferencia especificado debe ser FTP_ASCII
o
FTP_BINARY.La diferencia entre ésta
función y ftp_get() es que ésta
función recupera el archivo asincrónicamente, de modo
que su programa puede realizar otras operaciones mientras el archivo
está siendo descargado.
Devuelve FTP_FAILED, FTP_FINISHED,
o
FTP_MOREDATA.
Ejemplo 1. Ejemplo de ftp_nb_get()
<?php
// Iniciar la descarga $ret = ftp_nb_get($mi_conexion, "test", "README", FTP_BINARY); while ($ret == FTP_MOREDATA) {
// Haga lo que quiera echo ".";
// Continuar la descarga... $ret = ftp_nb_continue($mi_conexion); } if ($ret != FTP_FINISHED) { echo "Hubo un error descargando el archivo..."; exit(1); } ?>
Ejemplo 2. Reanudando una descarga
con ftp_nb_get()
En el ejemplo anterior, "archivo_nuevo" es 100
bytes más pequeña que "README" en
el servidor FTP, ya que comenzamos la lectura en la posición
100. Si no hemos deshabilitado FTP_AUTOSEEK, los
primeros 100 bytes de "archivo_nuevo"
serán '\0'.