我编写了一个 MySQL 数据库备份脚本,它将备份文件存储在远程 FTP 服务器中。它在根目录中创建一些以数据库名称命名的文件夹,然后在每个文件夹中创建一些以当前日期命名的文件夹(格式:yyyy-mm-dd),并在这些文件夹中上传以确切时间命名的备份文件。
我还需要删除旧的二级文件夹(按日期命名);我的意思是超过 4 天的文件夹。这是我有问题的部分。我用 ftp_nlist 尝试了一些代码,我可以用它列出文件夹,我还用 ftp_mdtm 来获取创建日期并将其与到期日期进行比较。但结果并不好。这是我的代码:
...
$skip = array('.', '..', '.ftpquota', '.htaccess');
$expire_date = date('Y-m-d', strtotime('-4 days', time()));
$ff_list = ftp_nlist($con, $db_dir);
foreach($ff_list as $item)
{
if(in_array($item, $skip))
{
continue;
}
$mod_time = ftp_mdtm($con, $item);
if(strtotime($expire_date ) >= $mod_time)
{
ftp_rmdir($con, $item);
}
}
...
请参加我需要删除旧文件夹及其所有内容,所以我需要合适的删除命令(我不知道 ftp_rmdir 是否正常工作)。