The ftp_size() function is an inbuilt function in PHP which is used to get the size of a given file on FTP server.
Syntax:
ftp_size( $ftp_connection, $file_name );
Parameter: This function accepts two parameters as mentioned above and described below:
- $ftp_connection: It is required parameter. It specifies the already existing FTP connection to use where the file exists.
- $file_name: It is required parameter. It specifies the file or file path on remote server i.e. FTP server.
Return Value: It returns the size of file on success or -1 on error.
Note:
- All ftp server doesn’t support this function.
- This function is available on PHP 4.0.0 and newer version.
- The following examples cannot be run on online IDE. So try to run in some PHP hosting server or localhost with proper ftp server name.
Below examples illustrate the ftp_size() function in PHP:
Example 1:
php
<?php// Connect to FTP server// Use a correct 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 = "shiva.jpg"; // 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); if($login) { // Checking whether logged in successfully or not echo "<br>logged in successfully!"; // Size of the file using ftp_size() function. $file_size = ftp_size($ftp_connection, $file); if ($file_size != -1) { echo "<br>$file is $file_size bytes."; } else { echo "<br>Error getting file size."; } } else { echo "<br>login failed!"; } // echo ftp_get_option($ftp_connection, 1); // Closing connection if(ftp_close($ftp_connection)) { echo "<br>Connection closed Successfully!"; } }?> |
Output:
Example 2: Connect to ftp server using port number 21.
php
<?php// Connect to FTP server// Use a correct 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 = "shiva.jpg"; // 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!"; // Size of the file using ftp_size() function. $file_size = ftp_size($ftp_connection, $file); if ($file_size != -1) { echo "<br>$file is $file_size bytes."; } else { echo "<br>Error getting file size."; } } else { echo "<br>login failed!"; } // echo ftp_get_option($ftp_connection, 1); // Closing connection if(ftp_close($ftp_connection)) { echo "<br>Connection closed Successfully!"; } }?> |
Output:
Reference: https://www.php.net/manual/en/function.ftp-size.php

