Saltar al contenido

PHP FTP

Introducción

FTP (File Transfer Protocol) es un protocolo de red estándar utilizado para transferir archivos de un host a otro a través de una red basada en TCP. PHP proporciona una extensión FTP integrada que te permite conectarte a servidores FTP y realizar diversas operaciones, como subir y descargar archivos. En este artículo, te proporcionaremos una guía detallada sobre cómo usar la extensión FTP de PHP, sus funciones y sus beneficios.

Conexión a un servidor FTP

Antes de poder realizar cualquier operación con la extensión FTP, debes establecer una conexión a un servidor FTP utilizando la función ftp_connect(). La función toma el nombre de host y el número de puerto opcional como parámetros, y devuelve un identificador de conexión en caso de éxito, o false en caso de fallo.

Conexión a un servidor FTP

php
<?php

$conn_id = ftp_connect("ftp.example.com");
if (!$conn_id) {
    echo "Could not connect to FTP server";
}

En este ejemplo, el código se conecta a un servidor FTP con el nombre de host "ftp.example.com". Si la conexión es exitosa, la función devuelve un identificador de conexión, que se puede utilizar en operaciones FTP posteriores.

Subida de archivos

Para subir un archivo a un servidor FTP, primero debes establecer una conexión usando ftp_connect() y luego autenticarte usando ftp_login(). Una vez autenticado, puedes usar la función ftp_put() para subir el archivo al servidor.

Subida de archivos en PHP

php
<?php

$conn_id = ftp_connect("ftp.example.com");
if (!$conn_id) {
    echo "Could not connect to FTP server";
}

$login_result = ftp_login($conn_id, "username", "password");
if (!$login_result) {
    echo "Could not authenticate with FTP server";
}

$upload_result = ftp_put($conn_id, "/remote/path/to/file.txt", "/local/path/to/file.txt", FTP_BINARY);
if (!$upload_result) {
    echo "Could not upload file to FTP server";
}

En este ejemplo, el código se conecta a un servidor FTP, se autentica con el servidor usando el nombre de usuario y la contraseña proporcionados, y luego usa ftp_put() para subir un archivo desde el sistema local al servidor.

Descarga de archivos

Para descargar un archivo de un servidor FTP, puedes usar la función ftp_get(), que toma el identificador de conexión, la ruta del archivo remoto, la ruta del archivo local y el modo de transferencia (ASCII o binario) como parámetros.

Descarga de archivos en PHP

php
<?php

$conn_id = ftp_connect("ftp.example.com");
if (!$conn_id) {
    echo "Could not connect to FTP server";
}

$login_result = ftp_login($conn_id, "username", "password");
if (!$login_result) {
    echo "Could not authenticate with FTP server";
}

$download_result = ftp_get($conn_id, "/local/path/to/file.txt", "/remote/path/to/file.txt", FTP_BINARY);
if (!$download_result) {
    echo "Could not download file from FTP server";
}

En este ejemplo, el código se conecta a un servidor FTP, se autentica con el servidor usando el nombre de usuario y la contraseña proporcionados, y luego usa ftp_get() para descargar un archivo desde el servidor al sistema local.

Beneficios

El uso de la extensión FTP de PHP puede ayudar a mejorar la eficiencia y confiabilidad de tus operaciones de transferencia de archivos. Al utilizar funciones integradas para operaciones FTP, puedes garantizar que tu código sea seguro y eficiente, además de facilitar su lectura y mantenimiento.

Conclusión

En conclusión, la extensión FTP de PHP es una herramienta útil para conectarse a servidores FTP y realizar operaciones de transferencia de archivos en aplicaciones PHP. Al utilizar las funciones proporcionadas por la extensión, puedes establecer conexiones seguras con servidores remotos, autenticarte en ellos y realizar diversas operaciones de transferencia de archivos, como subir y descargar archivos.

Práctica

¿Cuáles son las funciones de FTP en PHP?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.