我需要一个PHP脚本来查找文件夹中最旧文件的日期.现在,我正在迭代每个文件,并将它的Date Modified与之前的文件进行比较,并保存最早的日期.
是否有更少的磁盘/内存密集的方式来做到这一点?文件夹中有大约300k文件.如果我在Windows资源管理器中打开该文件夹,它将按修改日期自动排序,我会更快地看到最旧的文件.有什么方法可以利用PHP脚本中的Explorer默认排序?
Ant*_*ney 25
// Grab all files from the desired folder
$files = glob( './test/*.*' );
// Sort files by modified time, latest to earliest
// Use SORT_ASC in place of SORT_DESC for earliest to latest
array_multisort(
array_map( 'filemtime', $files ),
SORT_NUMERIC,
SORT_ASC,
$files
);
echo $files[0] // the latest modified file should be the first.
Run Code Online (Sandbox Code Playgroud)
取自本网站
祝好运
编辑:要排除目录中的文件以减少不必要的搜索:
$files = glob( './test/*.*' );
$exclude_files = array('.', '..');
if (!in_array($files, $exclude_files)) {
// Sort files by modified time, latest to earliest
// Use SORT_ASC in place of SORT_DESC for earliest to latest
array_multisort(
array_map( 'filemtime', $files ),
SORT_NUMERIC,
SORT_ASC,
$files
);
}
echo $files[0];
Run Code Online (Sandbox Code Playgroud)
如果您知道要查找的内容以及可以排除的内容,这将非常有用.