我正在查找今天创建的文件。我在其他帖子中找到了我的大部分答案,但不能完全正确。下面的代码将回声所有的文件,而不仅仅是今天创建的文件。有什么建议吗?谢谢
$di = new RecursiveDirectoryIterator('/documents/listings');
foreach (new RecursiveIteratorIterator($di) as $filename => $file)
{
if (date ("m-d-Y", filemtime($file)) == date("m-d-Y"))
{ echo $filename . '<br/>'; }
}
首先,关于函数filemtime,它返回:文件修改时间。
但也存在函数filectime,它返回:文件的inode更改时间。
正如我发现filectime更适合您的问题,但它实际上不仅返回今天创建的文件,还返回今天编辑的文件。
我的代码:
<?php
$path = dirname(__FILE__);
$objects = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($path),
RecursiveIteratorIterator::SELF_FIRST
);
foreach ($objects as $file => $object) {
$basename = basename($file);
if ($basename == '.' or $basename == '..') {
continue;
}
if (is_dir($file)) {
continue;
}
if (date('Y-m-d') === date('Y-m-d', filectime($file))) {
echo $file . PHP_EOL;
}
}
您的代码对我很有用。请检查一次文件创建日期,或者尝试更改您在过去的中创建的目录
if (!is_dir($file) && date ("m-d-Y", filemtime($file)) == date("m-d-Y"))
也许你只想显示没有目录的文件?试试这个条件。