Php 移动已过期的文件
因此,我设法使用以下方法获取目录中的所有文件:Php 移动已过期的文件,php,Php,因此,我设法使用以下方法获取目录中的所有文件: $dir = PUBLIC_DIRECTORY . '/' . $login_session . '/'; $files = array(); $DirectoryIterator = new RecursiveDirectoryIterator($dir); $IteratorIterator = new RecursiveIteratorIterator($DirectoryIterator, RecursiveIteratorItera
$dir = PUBLIC_DIRECTORY . '/' . $login_session . '/';
$files = array();
$DirectoryIterator = new RecursiveDirectoryIterator($dir);
$IteratorIterator = new RecursiveIteratorIterator($DirectoryIterator, RecursiveIteratorIterator::SELF_FIRST);
foreach ($IteratorIterator as $file) {
$path = $file;
if ($file->isFile())
$files[] = realpath($path);
}
其结果是:
C:\xampp\htdocs\fms\public\kei\docx\FMS.docx
C:\xampp\htdocs\fms\public\kei\jpg\1.jpg
现在我使用了下面的代码,当文件老化时,应该将文件从其目录中移动到C:\xampp\htdocs\fms\public\kei\Bin\
foreach($files as $f) {
if (filemtime($f) < time() - 86400) {
rename($f, realpath($dir . "/Bin/" . basename($f));
}
}
但是这个代码显示
C:\xampp\htdocs\fms\public\kei\BinFMS.docx
C:\xampp\htdocs\fms\public\kei\Bin1.jpg
我通过这样做设法修复了它 $bin=“\bin\”
这个
重命名($f,realpath($dir)。$bin.basename($f))代码>我通过这样做成功地修复了它
$bin=“\bin\”
这个重命名($f,realpath($dir)。$bin.basename($f))代码>嗨!如果您注意到,$f
是文件的完整路径,因为foreach($f文件)
Hi!如果您注意到,$f
是文件的完整路径,因为foreach($f文件)
C:\xampp\htdocs\fms\public\kei\BinFMS.docx
C:\xampp\htdocs\fms\public\kei\Bin1.jpg