我搜索具有glob
功能的导演并获得匹配的文件列表。然后通过检查filemtime
文件我创建了一个地图。然后根据文件日期对地图进行排序。最后我得到了最新的文件名和修改时间。我的代码是这样的。它适用于小目录,但对于大目录来说很慢。我想知道是否有更快/更聪明的方法?
$fileList = array();
// $id = is the argument of this function
$files = glob('myfolder'.DS.'someone'.$id.'*.txt');
if (empty($files)) {
return 0;
}
foreach ($files as $file) {
$fileList[filemtime($file)] = $file;
}
if (sizeof($files) > 1) {
ksort($fileList);
}
$latestFilename = end($fileList);
$fileLastModifDate = filemtime( $latestFilename );