我想获取目录中最旧文件的日期。 我知道如何获得最老但我希望它排除像.png .jpg等文件。 我尝试了这段代码,但它不起作用:
<?php
$files = glob( 'test/*.*' );
$exclude_files = array('*.jpg', '*.bit', '*.png', '*.jpeg');
if (!in_array($files, $exclude_files)) {
array_multisort(
array_map( 'filemtime', $files ),
SORT_NUMERIC,
SORT_ASC,
$files
);
}
echo date ("d F Y .", filemtime($files[0]));
?>
现在它获取了最旧文件的日期,但我希望它没有.jpg etx。文件
我该怎么做?
答案 0 :(得分:2)
由于glob()
会向您返回一组文件,您应该可以使用array_filter()
过滤掉任何包含您不喜欢的扩展名的文件:
$files = array_filter(glob('test/*.*'), function($file) {
// get the file's extension
$ext = substr($file, strrpos($file, '.'));
// check if the extension is in the list we don't want:
return !in_array($ext, array('.jpg', '.bit', '.png', '.jpeg'));
});