PHP Function Reference

PHP ftp_pasv() Function



The PHP ftp_pasv() function turns on or off passive mode. In passive mode, data connections are initiated by the client, rather than by the server. This is useful if the client is behind a firewall.

Note: This function can only be called after a successful login or otherwise it will fail.

Syntax

ftp_pasv(ftp, enable)

Parameters

ftp Required. Specify the FTP connection to use.
enable Required. Specify the passive mode. Possible values:
  • TRUE - passive mode on
  • FALSE - passive mode off

Return Value

Returns true on success or false on failure.

Example:

The example below shows the usage of ftp_pasv() function.

<?php
//FTP server to use
$ftp_server = "ftp.example.com";
 
$old_file = 'oldfile.txt';
$new_file = 'newfile.txt';

//username for the FTP Connection
$ftp_user = "user";
  
//password for the user
$ftp_pass = "password";
  
//set up a connection or die 
$ftp = ftp_connect($ftp_server)
    or die("Could not connect to $ftp_server");
   
if($ftp) {
  echo "Successfully connected to $ftp_server!\n";
 
  //trying to login
  if(@ftp_login($ftp, $ftp_user, $ftp_pass)) {
    echo "Connected as $ftp_user@$ftp_server\n";

    //server file path where the 
    //file need to be uploaded
    $server_file = "server_demo.txt";

    //local file path which 
    //need to be uploaded
    $local_file = "local_demo.txt";
        
    //turn passive mode on
    ftp_pasv($ftp, true);
    
    //uploading the specified local file
    if (ftp_put($ftp, $server_file, 
                $local_file, FTP_ASCII)) {
      echo "Successfully uploaded $local_file\n";
    } else {
      echo "Error while uploading $local_file\n";
    }
    
  } else {
    echo "Couldn't connect as $ftp_user\n";
  }
 
  //close the connection
  if(ftp_close($ftp)) {
    echo "Connection closed successfully!\n"; 
  } 
}
?>

The output of the above code will be:

Successfully connected to ftp.example.com!
Connected as user@ftp.example.com
Successfully uploaded local_demo.txt
Connection closed successfully!

❮ PHP FTP Reference