PHP/Network/FTP Functions

Материал из Web эксперт
Перейти к: навигация, поиск

FTP Functions

   <source lang="html4strict">

Name Description ftp_alloc() Allocates space for a file to be uploaded ftp_cdup() Changes to the parent directory ftp_chdir() Changes the current directory on an FTP server ftp_chmod() Sets permissions on a file via FTP ftp_close() Closes an FTP connection ftp_connect() Opens an FTP connection ftp_delete() Deletes a file on the FTP server ftp_exec() Requests execution of a program on the FTP server ftp_fget() Downloads a file from the FTP server and saves to an open file ftp_fput() Uploads from an open file to the FTP server ftp get option() Retrieves various runtime behaviors of the current FTP stream ftp_get() Downloads a file from the FTP server ftp_login() Logs into an FTP connection ftp_mdtm() Returns the last modified time of the given file ftp_mkdir() Creates a directory ftp_nb_continue() Continues retrieving/sending a file (nonblocking) ftp_nb_fget() Retrieves a file from the FTP server and writes it to an open file (nonblocking) ftp_nb_fput() Stores a file from an open file to the FTP server (nonblocking) ftp_nb_get() Retrieves a file from the FTP server and writes it to a local file (nonblocking) ftp_nb_put() Stores a file on the FTP server (nonblocking) ftp_nlist() Returns a list of files in the given directory ftp_pasv() Turns passive mode on or off ftp_put() Uploads a file to the FTP server ftp_pwd() Returns the current directory name ftp_quit() Alias of ftp_close() ftp_raw() Sends an arbitrary command to an FTP server ftp_rawlist() Returns a detailed list of files in the given directory ftp_rename() Renames a file or a directory on the FTP server ftp_rmdir() Removes a directory ftp_set_option() Sets miscellaneous runtime FTP options ftp_site() Sends a SITE command to the server ftp_size() Returns the size of the given file ftp_ssl_connect() Opens a secure SSL-FTP connection ftp_systype() Returns the system type identifier of the remote FTP server

 </source>
   
  


ftp put

   <source lang="html4strict">

<?php $conn = ftp_connect("ftp.somedomain.ru"); if ($conn) {

 $session = ftp_login($conn, "user", "pass");
 if ($session) {
   if (ftp_chdir($conn, "somedir")) {
     ftp_put($conn, "remote.txt", "local.txt", FTP_ASCII);
   }
 }
 ftp_close($conn);

} ?>

 </source>
   
  


Saving a remote file via FTP with file_put_contents()

   <source lang="html4strict">

$page = file_get_contents("page-template.html"); $page = str_replace("{page_title}", "Welcome", $page); if (date("H" >= 12)) {

   $page = str_replace("{color}", "blue", $page);

} else {

   $page = str_replace("{color}", "green", $page);

}

$page = str_replace("{name}", $_SESSION["username"], $page); file_put_contents("ftp://name:password@ftp.example.ru/welcome.html", $page);

 </source>
   
  


use the ftp_* functions to upload a single file to an FTP server.

   <source lang="html4strict">

<?php $conn = ftp_connect ( "ftp.somedomain.ru" ); if ($conn) {

 $session = ftp_login ( $conn, "user", "pass" );
 if ($session) {
   if (ftp_chdir ( $conn, "somedir" )) {
     ftp_put ( $conn, "remote.txt", "local.txt", FTP_ASCII );
   }
 }
 ftp_close ( $conn );

} ?>

 </source>
   
  


Using a password with FTP or HTTP

   <source lang="html4strict">

<?php $fh = fopen("ftp://username:password@ftp.example.ru/pub/Index","r"); $fh = fopen("http://username:password@www.example.ru/robots.txt","r"); ?>

 </source>
   
  


Write to file with ftp functions

   <source lang="html4strict">

<?php $file_name = "index.php"; $fp = fopen($file_name, "r"); if ($fp) {

 $data = fread($fp, filesize($file_name));
 fclose($fp);
 $file_name = "ftp://user:pass@ftp.somedomain.ru/home/user/$file_name"; 
 $fp = fopen($file_name, "wt");
 if ($fp) {
   echo "writing data";
   fwrite($fp, $data);
   fclose($fp);
 }

} ?>

 </source>
   
  


Write to remote file on a ftp server

   <source lang="html4strict">

<?php $file_name = "data.txt"; $fp = fopen ( $file_name, "r" ); if ($fp) {

 $data = fread ( $fp, filesize ( $file_name ) );
 fclose ( $fp );
 $file_name = "ftp://user:pass@ftp.somedomain.ru/home/user/$file_name";
 $fp = fopen ( $file_name, "wt" );
 if ($fp) {
   echo "writing data";
   fwrite ( $fp, $data );
   fclose ( $fp );
 
 }

} ?>

 </source>