以下代碼的工作原理可以讓我可以成功地遞歸下載目錄。但是,我想下載這個目錄中的目錄。所以,當它連接它。在。目錄是一個子目錄「In」。我想遞歸地檢索In目錄中的內容。目錄名稱本身將會改變,所以我不能指定腳本本身的內容......任何人都知道如何做到這一點?PHP - FTP子目錄遞歸?
ftp_sync ("./In/");
ftp_close($conn_id);
function ftp_sync ($dir) {
global $conn_id;
if ($dir != ".") {
if (ftp_chdir($conn_id, $dir) == false) {
echo ("Change Dir Failed: $dir<BR>\r\n");
return;
}
if (!(is_dir($dir)))
mkdir($dir);
chdir ($dir);
}
$contents = ftp_nlist($conn_id, "./In/");
foreach ($contents as $file) {
if ($file == '.' || $file == '..')
continue;
if (@ftp_chdir($conn_id, $file)) {
ftp_chdir ($conn_id, "..");
ftp_sync ($file);
}
else
ftp_get($conn_id, $file, $file, FTP_BINARY);
}
ftp_chdir ($conn_id, "..");
chdir ("..");
}
上面的代碼在本地文件夾上很好地工作。爲了讓它瀏覽ftp文件夾,首先用curlftpfs在本地安裝它們。 – witkacy26 2016-03-03 22:08:14