我正在尝试查找今天创建的文件。我在其他帖子中找到了大部分答案,但不能完全正确。下面的代码回显了所有文件,而不仅仅是今天创建的文件。有什么建议?感谢。
$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/>'; }
}
答案 0 :(得分:1)
你的代码对我有用。请检查文件创建日期一次。或尝试更改您在过去创建的目录
答案 1 :(得分:1)
首先,关于函数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;
}
}
答案 2 :(得分:-1)
if (!is_dir($file) && date ("m-d-Y", filemtime($file)) == date("m-d-Y"))
也许您只想显示没有目录的文件?试试这个条件。