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:
|
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