La función ftp_put() es una función incorporada en PHP que se usa para cargar archivos al servidor FTP.
Sintaxis:
ftp_put( $ftp_connection, $remote_file_path, $local_file_path, $mode, $start_position );
Parámetro: Esta función acepta cinco parámetros como se mencionó anteriormente y se describe a continuación:
- $ftp_connection: Es un parámetro requerido. Especifica la conexión FTP ya existente que se usará para cargar el archivo.
- $remote_file_path: Es un parámetro requerido. Especifica la ruta en el servidor remoto, es decir, el servidor FTP en el que se carga el archivo.
- $local_file_path: Es un parámetro requerido. Especifica la ruta del archivo que se cargará en el servidor FTP.
- $mode: Es un parámetro requerido. Especifica el modo de transferencia. Los valores del parámetro son FTP_ASCII o FTP_BINARY.
- $start_position: Es un parámetro opcional. Especifica la posición en el archivo remoto para comenzar a cargar.
Valor devuelto: Devuelve True en caso de éxito o False en caso de fallo.
Nota:
- Esta función está disponible en PHP 4.0.0 y versiones posteriores.
- Los siguientes ejemplos no se pueden ejecutar en un IDE en línea. Así que intente ejecutar en algún servidor de alojamiento PHP o localhost con el nombre de servidor ftp adecuado.
Los siguientes ejemplos ilustran el uso de la función ftp_put() en PHP:
Ejemplo 1:
php
<?php // Connect to FTP server $ftp_server = "localhost"; // Use correct ftp username $ftp_username="user"; // Use correct ftp password corresponding // to the ftp username $ftp_userpass="user"; // File name or path to upload to ftp server $file = "filetoupload.txt"; // Establishing ftp connection $ftp_connection = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); if( $ftp_connection ) { echo "Successfully connected to the ftp server!"; // Logging in to established connection with // ftp username password $login = ftp_login($ftp_connection, $ftp_username, $ftp_userpass); // Checking whether logged in successfully or not if($login) { echo "<br>logged in successfully!"; if (ftp_put($ftp_connection, "uploadedfile_name_in_server.txt", $file, FTP_ASCII)) { echo "<br>Uploaded successful $file."; } else { echo "<br>Error while uploading $file."; } } else { echo "<br>login failed!"; } // Closing the connection if(ftp_close($ftp_connection)) { echo "<br>Connection closed Successfully!"; } } ?>
Producción:
Successfully connected to the ftp server! logged in successfully! Uploaded successful filetoupload.txt. Connection closed Successfully!
Ejemplo 2: Conéctese al servidor ftp usando el número de puerto 21 y luego cargue el archivo.
php
<?php // Connect to FTP server // Server name $ftp_server = "localhost"; // Use correct ftp username $ftp_username="user"; // Use correct ftp password corresponding // to the ftp username $ftp_userpass="user"; // File name or path to upload to ftp server $file = "filetoupload.txt"; // Establishing ftp connection $ftp_connection = ftp_connect($ftp_server, 21) or die("Could not connect to $ftp_server"); if( $ftp_connection ) { echo "Successfully connected to the ftp server!"; // Logging in to established connection with // ftp username password $login = ftp_login($ftp_connection, $ftp_username, $ftp_userpass); if( $login ) { // Checking whether logged in successfully or not echo "<br>logged in successfully!"; if (ftp_put($ftp_connection, "uploadedfile_name_in_server.txt", $file, FTP_ASCII)) { echo "<br>Uploaded successful $file."; } else { echo "<br>Error while uploading $file."; } } else { echo "<br>login failed!"; } // Echo ftp_get_option($ftp_connection, 1); // Closing connection if(ftp_close($ftp_connection)) { echo "<br>Connection closed Successfully!"; } } ?>
Producción:
Successfully connected to the ftp server! logged in successfully! Uploaded successful filetoupload.txt. Connection closed Successfully!
Referencia: https://www.php.net/manual/en/function.ftp-put.php