/**
* Util::scandir_bydate()
* 增强型目录扫描,根据修改时间排序
* @param mixed $path
* @param bool $desc 倒序?
* @return array $filelist
*/
function scandir_bydate($path,$desc=false){
$filelist = scandir($path);
if(!is_array($filelist)){ //404 或不是目录,中断操作,继承原方法。
return $filelist;
}
unset($newlist);
foreach($filelist as $fname){
if($fname!="."&&$fname!=".."){ //跳过两个特殊的目录
$fct = filectime($path."/".$fname);
$newlist[$fname] = $fct ; //为什么要用fct作为value 的格式,是因为时间可能会重合如果作为key就会覆写,而文件名是不会重复的
}
}
//排序
if($desc){ //反排
arsort($newlist);
}else{
asort($newlist);
}
array_unshift($newlist,".","..");//让我来组成头部!!
//输出排序后的新清单
unset($filelist);
foreach($newlist as $fn => $ts){ //时间戳其实已经没有用了,只要按重排的顺序取出key
$filelist[] = $fn;
}
return $filelist;
}
Article Detail
PHP: scandir()按照时间排列的方法
/** * Util::scandir_bydate() * 增强型目录扫描,根据修改时间排序 * @param mixed $path * @param bo...
😀😁😂😅😎🤔🥳🤯😴😬👏🎉🎉🔥🔥🔥
😀
d
🤔🤔🥳🥳🥳