当 filemtime、stat['mtime'] 和 get_headers 失败时,使用 PHP 从文件中获取最后修改的信息

发布于 2024-09-12 17:18:33 字数 800 浏览 5 评论 0原文

我试图以与上次修改时相反的顺序显示图像。不幸的是, get_headers() 似乎只适用于 url,并且 stat['mtime'] 和 filemtime() 对我来说都失败了。还有其他方法可以获取文件的最后修改信息吗?这是我现在的代码:

if (isset($_GET['start']) && "true" === $_GET['start'])
{
    $images = array();

    if ($dir = dir('images'))
    {
        $count = 0;

        while(false !== ($file = $dir->read()))
        {
            if (!is_dir($file) && $file !== '.' && $file !== '..' && (substr($file, -3) === 'jpg' || substr($file, -3) === 'png' || substr($file, -3) === 'gif'))
            {
                $lastModified = filemtime($file);
                $images[$lastModified] = $file;
                ++$count;
            }
        }

        echo json_encode($images);
    }
    else { echo "Could not open directory"; }
}

I'm trying to display images in the reverse order of when they were last modified. Unfortunately, get_headers() seems to only work for urls, and both stat['mtime'] and filemtime() fail for me. Are there any other ways for me to get the last modified info for a file? Here's my code at the moment:

if (isset($_GET['start']) && "true" === $_GET['start'])
{
    $images = array();

    if ($dir = dir('images'))
    {
        $count = 0;

        while(false !== ($file = $dir->read()))
        {
            if (!is_dir($file) && $file !== '.' && $file !== '..' && (substr($file, -3) === 'jpg' || substr($file, -3) === 'png' || substr($file, -3) === 'gif'))
            {
                $lastModified = filemtime($file);
                $images[$lastModified] = $file;
                ++$count;
            }
        }

        echo json_encode($images);
    }
    else { echo "Could not open directory"; }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情绪操控生活 2024-09-19 17:18:33

在调用 filemtime($file) 之前,您应该在文件名前面添加路径。尝试

$lastMod = filemtime("images/".$file);

You should prepend the path to the filename, before calling filemtime($file). Try

$lastMod = filemtime("images/".$file);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文