-
Notifications
You must be signed in to change notification settings - Fork 0
/
ftp_sync.php
58 lines (42 loc) · 1.16 KB
/
ftp_sync.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
echo 'Sync<br>';
ini_set('memory_limit', '-1');
ini_set('max_execution_time', 300);
// set up basic connection
$conn_id = ftp_connect($ipAddress); //ipaddress or FQDN
//check to see if server is responding
if($conn_id){
// login with username and password
$login_result = ftp_login($conn_id, $userName, $passWord);
$remote_dir=''; //ftp root on File Server (specified in ftp server config)
$local_dir='c:/Apache24/htdocs/library/'; // local starting directory
// get the file list for /
function getFiles($conn_id, $remote_dir, $local_dir) {
$file_list = ftp_nlist($conn_id, $remote_dir);
foreach ($file_list as $file)
{
//echo "<br>$file";
$res = ftp_size($conn_id, $file);
$local_file = $local_dir.$file;
if ($res != -1) {
//echo "<br>$file";
if (file_exists($local_file)){
echo $local_file.'<br>';
} else {
ftp_get($conn_id, $local_file, $file, FTP_BINARY);
}
} else {
if (@!mkdir($local_file, 0777, true)) {
}
getFiles($conn_id, $file, $local_dir);
}
}
}
getFiles($conn_id, $remote_dir, $local_dir);
//removeFiles($conn_id, $local_dir);
// close the connection
ftp_close($conn_id);
} else {
echo 'FTP Server not responding';
}
?>