You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
981 B
PHP
29 lines
981 B
PHP
<?php
|
|
include('Net/SFTP.php');
|
|
|
|
$sftp = new Net_SFTP('106.14.1.181');
|
|
if (!$sftp->login('10000004000', 'YRATF0OtDaYa2Uhv6cWO8BV9FPBup5')) {
|
|
exit('Login Failed');
|
|
}
|
|
// 获取前一天的对账单
|
|
// target remote
|
|
$target_folder = str_replace("-", "/", date("/Y-m", strtotime("-1 day")) );
|
|
$file_list = array_values(array_diff($sftp->nlist($target_folder), array(".","..")));
|
|
// target local
|
|
$target_local = "statement_files" . $target_folder;
|
|
if ( ! is_dir($target_local)) {
|
|
mkdir($target_local, 0777, true);
|
|
}
|
|
// local files
|
|
$local_files = array_values(array_diff(scandir($target_local), array('.', '..')));
|
|
// new files
|
|
$new_files = array_values(array_diff($file_list, $local_files));
|
|
// copies filename.remote to filename.local from the SFTP server
|
|
$new_cnt = 0;
|
|
foreach ($new_files as $key => $new) {
|
|
$file_path = $target_folder . "/" . $new;
|
|
$sftp->get($file_path, $target_local . "/" . $new);
|
|
$new_cnt++;
|
|
}
|
|
echo "Copied new statements count: " . $new_cnt;
|