2012-02-28 54 views

回答

0

我敢肯定,你必须查看所有文件,并获取最大mod时间。使用'glob'循环遍历文件并使用filemtime()来获取文件mod的日期/时间。

3

是的,这是可能的。 请参考此方法:http://php.net/manual/en/function.filemtime.php

为了工作列出文件夹中的所有文件并获取filemtime。比较他们,你会发现该文件夹中的最新更新的文件。

记住,这种方法会在UNIX时间返回(),但不喜欢(年/月/日)

UPDATE日期: 寻找最新的文件直接是不可能的。你必须通过一个检查文件。

<?php 
function findMostNewFile($folder) { 
    $files = array(); 

    foreach (scandir($folder) as $file) { 
     $path = $folder . DIRECTORY_SEPARATOR . $file; 
     if (is_dir($path)) continue; // do not count folders. only files. 
     $files[filemtime($path)] = $path; 
    } 
    krsort($files); 

    $arr = array_slice($files, 0, 1); // return the first newest file's path as array 
    return $arr[0]; // return only a path and name as a string 
} 
?> 

就是这样。

UPDATE:return as string。

+0

谢谢你的回应Gencer.I认为filemtime是一个特定的文件?但我想查找目录中最后修改的文件名。 – yogi46 2012-02-28 13:03:30

+0

欢迎您。我明白你需要什么。你不能直接做到这一点。这项工作没有任何功能/方法。你所要做的就是抓取一个文件夹中的所有文件并读取它们的filemtime。 Plase看看我的帖子。我根据你的需要对它进行了升级。 – flower58 2012-02-28 13:10:08

+0

对不起Gengent!我得到了这个“警告:array_slice()期望参数1是数组,布尔给定”。 – yogi46 2012-02-28 13:44:37

相关问题