A Scripting Language for Web, Linux and Windows

A Scripting Language for Web, Linux and Windows

Example: Connect to a FTPS server

Demonstrates how to work with FTP library.

<?php <?v1

require_once ("lib/ftp.inc.v1");
require_once ("lib/utils.inc.v1");

/*
 Open FTP connection with optional authentication and TLS.

 @param host FTP server
 @param user Username
 @param pass Password
 @param port FTP port, if port is 21
 @param fTLS true or 1 if SSL connection is established (FTPS explicit), if fTLS is 2 then a implicit 
 TLS connection will be established. If fTSL is false or 0, then a pure FTP connection will be established.
 @param fVerbose true print return from server to stdout, if fVerbose is a string the callback
 function myname (status, param) will be called, param can be a text or array with status information. 
 @return connection data array. 
 On error false or error text is returned.
*/

conn = ftp_open ("server.com", "username", "password", 21, true, true);

if (is_array (conn)) {

  // Welcome message
  print (conn["welcome_msg"]);

  // Set data type binary  
  ftp_type (conn, "I");

  // Change directory
  ret = ftp_cwd (conn, "logs");
  if (ret===true) {

  }
  else {
    print ("CWD failed. ", ret);
  }

  // Retrieve a file
  filename = "text.log";
  fh = fopen ("test.log", "w+");
  ret = ftp_retr (conn, filename, fh);
  fclose (fh);
  if (ret===true) {

  }
  else {
    print ("RETR failed. ", ret);  
    if (is_file (filename))
      unlink (filename);
  }

  // Store a file
  filename = "test.csv";
  fh = fopen ("test.csv", "r");
  ret = ftp_stor (conn, filename, fh);
  fclose (fh);
  if (ret===true) {

  }
  else {
    print ("STOR failed. ", ret);  
  }

  // List directory
  dirList = array ();  
  ret = ftp_list (conn, dirList);
  if (ret===true) {
    print_r (dirList);
  }
  else {
    print ("LIST failed. ", ret);
  }

  // Rename a file   
  ret = ftp_rnfr (conn, filename);
  if (ret===true) {
    newFilename = filename.".new";
    ret = ftp_rnto (conn, newFilename);
    if (ret===true) {
      filename = newFilename;
    }
    else {
      print ("RNTO failed. ", ret);
    } 
  }
  else {
    print ("RNFR failed. ", ret);
  }  

  // Delete a file
  ret = ftp_dele (conn, filename);
  if (ret===true) {
  }
  else {
    print ("DELE failed. ", ret);
  }  

  // Create a directory  
  ret = ftp_mkd (conn, "test");
  if (ret===true) {
  }
  else {
    print ("MKD failed. ", ret);
  }

  // Remove directory  
  ret = ftp_rmd (conn, "test");
  if (ret===true) {

  }
  else {
    print ("RMD failed. ", ret);
  }  

  // Quit ftp connection
  ftp_quit (conn);
}
else {
  print ("FTP connection failed. ", conn);
  exit (1);
}

?>

back to Home