Funciones FTP
Introducción
Las funciones en esta extensión implementan acceso de cliente a servidores de archivos que entiendan el Protocolo de Transferencia de Archivos (FTP, por sus siglas en Inglés), tal y como se define en » https://www.faqs.org/rfcs/rfc959. Esta extensión tiene como propósito el acceso detallado a un servidor FTP, brindando un amplio rango de control al script que se encuentre ejecutando. Si sólo desea leer desde un archivo o escribir sobre un archivo en un servidor FTP, considere el uso de la envoltura ftp:// con las funciones del sistema de archivos, medio que provee una interfaz más simple e intuitiva.
Requisitos
No se necesitan bibliotecas externas para construir esta extensión
Instalación
Para usar las funciones FTP con su configuración PHP, debe agregar la opción --enable-ftp cuando instale PHP 4 o versiones posteriores, o --with-ftp cuando use PHP 3.
La versión para Windows de PHP tiene soporte nativo para esta extensión. No se necesita cargar ninguna extensión adicional para usar estas funciones.
Configuración en tiempo de ejecución
Esta extensión no tiene directivas de configuración en php.ini.
Tipos de recursos
Esta extensión usa un tipo de recurso, que es el identificador de enlace de la conexión FTP devuelto por ftp_connect() o ftp_ssl_connect().
Constantes predefinidas
Estas constantes están definidas por esta extensión y estarán disponibles solamente cuando la extensión ha sido o bien compilada dentro de PHP o grabada dinámicamente en tiempo de ejecución.
- FTP_ASCII (integer)
- FTP_TEXT (integer)
- FTP_BINARY (integer)
- FTP_IMAGE (integer)
- FTP_TIMEOUT_SEC (integer)
-
Vea ftp_set_option() para más información.
Las siguientes constantes fueron introducidas en PHP 4.3.0.
- FTP_AUTOSEEK (integer)
-
Vea ftp_set_option() para más información.
- FTP_AUTORESUME (integer)
-
Determinar automáticamente la posición de continuación y la posición de comienzo para peticiones GET y PUT (funciona únicamente si FTP_AUTOSEEK está habilitado)
- FTP_FAILED (integer)
-
La transferencia asincrónica ha fallado
- FTP_FINISHED (integer)
-
La transferencia asincrónica ha terminado
- FTP_MOREDATA (integer)
-
La transferencia asincrónica está aun activa
Ejemplos
Example#1 Ejemplo de FTP
<?php
// establecer una conexion basica
$id_con = ftp_connect($servidor_ftp);
// inicio de sesion con nombre de usuario y contrasenya
$resultado_login = ftp_login($id_con, $nombre_usuario_ftp, $contrasenya_ftp);
// chequear la conexion
if ((!$id_con) || (!$resultado_login)) {
echo "¡La conexión FTP ha fallado!";
echo "Se ha intentado la conexion con $servidor_ftp para el " .
"usuario $nombre_usuario_ftp";
exit;
} else {
echo "Conectado con $servidor_ftp, para el usuario $nombre_usuario_ftp";
}
// cargar el archivo
$carga = ftp_put($id_con, $archivo_destino, $archivo_fuente, FTP_BINARY);
// chequear el status de la carga
if (!$carga) {
echo "¡La carga FTP ha fallado!";
} else {
echo "Se ha cargado $archivo_fuente a $servidor_ftp como $archivo_destino";
}
// cierra la secuencia FTP
ftp_close($id_con);
?>
Table of Contents
- ftp_alloc — Reserva espacio para que un archivo sea cargado
- ftp_cdup — Cambia al directorio padre
- ftp_chdir — Cambia el directorio actual en un servidor FTP
- ftp_chmod — Establecer permisos en un archivo via FTP
- ftp_close — Cierra una conexión FTP
- ftp_connect — Abre una conexión FTP
- ftp_delete — Elimina un archivo en el servidor FTP
- ftp_exec — Solicita la ejecución de un comando en el servidor FTP
- ftp_fget — Descarga un archivo desde el servidor FTP y lo guarda en un archivo abierto
- ftp_fput — Carga un archivo abierto al servidor FTP
- ftp_get_option — Recupera varios comportamientos de tiempo de ejecución de la secuencia FTP actual
- ftp_get — Descarga un archivo desde el servidor FTP
- ftp_login — Inicia sesión en una conexión FTP
- ftp_mdtm — Devuelve el tiempo de la última modificación del archivo dado
- ftp_mkdir — Crea un directorio
- ftp_nb_continue — Continúa recuperando/enviando un archivo (modo no-bloqueo)
- ftp_nb_fget — Recupera un archivo desde el servidor FTP y lo escribe sobre un archivo abierto (modo no-bloqueo)
- ftp_nb_fput — Almacena un archivo desde un archivo abierto en el servidor FTP (modo no-bloqueo)
- ftp_nb_get — Recupera un archivo desde el servidor FTP y lo escribe sobre un archivo local (modo no-bloqueo)
- ftp_nb_put — Almacena un archivo en el servidor FTP (modo no-bloqueo)
- ftp_nlist — Devuelve una lista de archivos en el directorio dado
- ftp_pasv — Habilita o deshabilita el modo pasivo
- ftp_put — Carga un archivo al servidor FTP
- ftp_pwd — Devuelve el nombre del directorio actual
- ftp_quit — Alias of ftp_close
- ftp_raw — EnvÃa un comando arbitrario a un servidor FTP
- ftp_rawlist — Devuelve una lista detallada de archivos en el directorio dado
- ftp_rename — Renombra un archivo o un directorio en el servidor FTP
- ftp_rmdir — Elimina un directorio
- ftp_set_option — Establecer varias opciones FTP de tiempo de ejecución
- ftp_site — EnvÃa un comando SITE al servidor
- ftp_size — Devuelve el tamaño del archivo dado
- ftp_ssl_connect — Abre una conexión segura SSL-FTP
- ftp_systype — Devuelve el identificador de tipo de sistema del servidor FTP remoto