The ftp_nlist() function is an inbuilt function in PHP which is used to get the list of all the filename and sub-directory in a specific directory on FTP server.
Syntax:
ftp_nlist( $ftp_connection, $directory );
Parameters: 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 get the list of all files and sub-directory of a directory in FTP server.
- $directory: It is required parameter of String type. It specifies the directory in remote server i.e. FTP server whose file & sub-directory is to list.
Return Value: It returns array of file names and sub-directory on success and false on failure.
Note:
- This function is available for 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.
- Don’t confused with filename and sub-directory! Many websites assumed sub-directory name also as filename.
Below examples illustrate the ftp_nlist() function in PHP:
Example 1:
<?php // Connect to FTP server // Use a correct ftp server $ftp_server = "localhost" ;
// Use correct ftp username $ftp_username = "username" ;
// Use correct ftp password corresponding // to the ftp username $ftp_userpass = "password" ;
// 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 );
if ( $login ){
// Checking whether logged in successfully or not
echo "<br>logged in successfully!" ;
// Get file & directory list of current directory
$file_list = ftp_nlist( $ftp_connection , "." );
//output the array stored in $file_list using foreach loop
foreach ( $file_list as $key => $dat ) {
echo $key . "=>" . $dat . "<br>" ;
}
}
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:
Content of that directory in file manager:
Example 2: Connect to ftp server using port number 21 and then list directory content.
<?php // Connect to FTP server // Use a correct ftp server $ftp_server = "localhost" ;
// Use correct ftp username $ftp_username = "username" ;
// Use correct ftp password corresponding // to the ftp username $ftp_userpass = "password" ;
// 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!" ;
// Get file & directory list of current directory
$file_list = ftp_nlist( $ftp_connection , "." );
//output the array stored in $file_list using foreach loop
foreach ( $file_list as $key => $dat ) {
echo $key . "=>" . $dat . "<br>" ;
}
}
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:
Content of that directory in file manager:
Reference: https://www.php.net/manual/en/function.ftp-nlist.php