我刚刚在我的Windows机器上运行PHP-CLI,因此我可以使用PHP创建脚本。但是,我正在尝试编写一个脚本来清理我的Firefox下载文件夹中早于X天的文件,但我似乎无法使filemtime()函数正常工作。
这是我写的函数:
function deleteOldFiles($dir, $days) {
$mydir = opendir($dir);
while(($file = readdir($mydir)) !== false) {
if($file != "." && $file != ".." && (filemtime($dir.$file) <= time() - ($days * 86400))) {
//unlink($dir.$file) or DIE("Failed to delete $dir$file<br />");
echo filemtime($dir.$file);
}
}
closedir($mydir);
}
运行此操作后,每个文件都会出现以下错误:
Warning: filemtime(): stat failed for E:\My Documents\Downloadsphp-5.3.0-nts-Win32-VC9-x86.msi in E:\_scripts\cleanupDownloads\cleanupDownloads.php on line 10
从我所做的研究中,filemtime()应该可以在Windows中运行。我做错了什么?
答案 0 :(得分:3)
Warning: filemtime(): stat failed for E:\My Documents\Downloadsphp-5.3.0-nts-Win32-VC9-x86.msi in E:\_scripts\cleanupDownloads\cleanupDownloads.php on line 10
您在目录和文件名之间缺少反斜杠\
。不要忘记在Windows上转义它(\\
)或只使用正斜杠(/
)或PHP的DIRECTORY_SEPARATOR
常量。
修改强>