4

我想知道是否可以使用 PHP 来查看上次访问文件夹的时间。我正在考虑在 php 中使用“touch()”,但这更多的是用于文件,不是吗?

提前致谢!

4

4 回答 4

4

据我所知,此信息仅存储有关文件的信息(根据其他人的说法,这是错误的,它适用于目录 - 请参阅 Dinesh 的回答)。但是,您可以遍历目录中的每个文件并发现目录中最近访问的文件(不完全是您想要的,但可能尽可能接近)。使用DirectoryIterator

<?php
$iterator = new DirectoryIterator(dirname(__FILE__));
$accessed = 0;
foreach ($iterator as $fileinfo) {
    if ($fileinfo->isFile()) {
        if ($fileinfo->getATime() > $accessed) {
            $accessed = $fileinfo->getAtime();
        }
    }
}
print($accessed);
?>

http://php.net/manual/en/directoryiterator.getatime.php

于 2013-04-21T10:21:01.363 回答
4

您可以使用fileatime(),它适用于文件和目录:

fileatime('dir');
于 2013-04-21T10:25:09.133 回答
2

你可以使用统计功能

$stat = stat('path to directory');
echo 'Accesstime: ' . $stat['atime']; // will show access unix time stamp.
于 2013-04-21T10:21:54.040 回答
0

我会打开文件夹并循环浏览文件(您可以使用glob()它)并使用filemtime().

http://php.net/manual/en/function.filemtime.php

http://www.php.net/manual/en/function.glob.php

如果您仍然需要帮助,我可以发布一个小示例

于 2013-04-21T10:24:29.050 回答