Tôi đã có một chút mã mà chuyển sao lưu từ các máy chủ phát triển của chúng tôi, và có vẻ như ngẫu nhiên cư xử rất kỳ lạ và đưa ra các lỗi sau đây/đầu ra:Cảnh báo: ftp_get(): Xóa hoạt động thành công
Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
ERR blahjob: Failed to get file: 2013-09-25_18-22-04-blahjob_dev18.tgz
PHP Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
ERR blahjob: Failed to get file: 2013-09-25_18-22-37-blahjob_dev19.tgz
PHP Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
ERR blahjob: Failed to get file: 2013-09-25_18-23-05-blahjob_dev5.tgz
PHP Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
Warning: ftp_get(): Delete operation successful. in /root/cron/get_dev_archives.php on line 106
ERR blahjob: Failed to get file: 2013-09-25_18-23-37-blahjob_dev33.tgz
Tôi không có ý tưởng nhỏ nhất về việc xóa phải làm gì với ftp_get()
hoặc tại sao nó trả về false
và ném cảnh báo về thành công của một hoạt động khác. Google cũng đã vô ích trong việc tìm kiếm bất kỳ vấn đề tương tự nào.
Mã trong câu hỏi:
// ftp connection established, file list acquired, yadda yadda
foreach($targets as $target) {
$localfile = $backup_dir . $target;
if(file_exists($localfile)) {
do_log($task['name'], "Local file ".$target." already exists, skipping.", 1);
continue;
}
if(! ftp_get($conn, $localfile, $target, FTP_BINARY)) { // line 106
do_log($task['name'], "Failed to get file: ".$target, 2);
} else {
do_log($task['name'], "Got file: ".$target);
ftp_delete($conn, $target);
}
}
Bạn đang sử dụng thiết lập máy chủ nào? Địa phương, nơi tập lệnh php này đang chạy. – idmean
@wumm Máy chủ CentOS 5.7 chạy PHP 5.2.10, tập lệnh này chạy qua CLI/cron. – Sammitch
Bạn có thể cho họ thấy mảng với mục tiêu của mình không? Và bạn có định nghĩa '$ task ['name']'> – Perry