Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PHP - Merging files with FTP
- <?php
- // FTP credentials
- $server = HIDDEN;
- $username = HIDDEN;
- $password = HIDDEN;
- // Connect to FTP
- $connection = ftp_connect($server) or die("Failed to connect to <b>$server</b>.");
- // Login to FTP
- if (!@ftp_login($connection, $username, $password))
- {
- echo "Failed to login to <b>$server</b> as <b>$username</b>.";
- }
- // Destination file (where the copied file should go)
- $destination = 'final.txt';
- // The file on my server that we're copying (in chunks) to $destination.
- $read = 'readme.txt';
- // Current chunk of $read.
- $temp = 'temp.tmp';
- // If the file we're trying to copy exists...
- if (file_exists($read))
- {
- // Set a chunk size (this is tiny, but I'm testing
- // with tiny files just to make sure it works)
- $chunk_size = 4;
- // For reading through the file we want to copy to the FTP server.
- $read_handle = fopen($read, 'r');
- // For writing the chunk to its own file.
- $temp_handle = fopen($temp, 'w+');
- // Loop through $read until we reach the end of the file.
- while (!feof($read_handle))
- {
- // Read a chunk of the file we're copying.
- $chunk = fread($read_handle, $chunk_size);
- // Write that chunk to its own file.
- fwrite($temp_handle, $chunk);
- ////////////////////////////////////////////
- //// ////
- //// NOW WHAT?? HOW DO I ////
- //// WRITE / APPEND THAT ////
- //// CHUNK TO $destination? ////
- //// ////
- ////////////////////////////////////////////
- }
- }
- fclose($read_handle);
- fclose($temp_handle);
- ftp_close($ftp_connect);
- ?>
- <?php
- // The URI of the remote file to be written to
- $write = 'ftp://username1:password1@domain1.com/path/to/writeme.txt';
- // The URI of the remote file to be read
- $read = 'ftp://username2:password2@domain2.com/path/to/readme.txt';
- if (file_exists($read)) // this will work over ftp too
- {
- $chunk_size = 4;
- $read_handle = fopen($read, 'r');
- $write_handle = fopen($write, 'a');
- while (!feof($read_handle))
- {
- $chunk = fread($read_handle, $chunk_size);
- fwrite($write_handle, $chunk);
- }
- }
- fclose($read_handle);
- fclose($write_handle);
- ?>
Add Comment
Please, Sign In to add comment