在oschina中發(fā)現(xiàn)了用PHP讀取文件夾目錄里的文件,并按照日期,大小,名稱排序的方法,這個(gè)正是我需要用到的,就發(fā)上來給大家學(xué)習(xí)一下。
function dir_size($dir,$url){
$dh = @opendir($dir); //打開目錄,返回一個(gè)目錄流
$return = array();
$i = 0;
while($file = @readdir($dh)){ //循環(huán)讀取目錄下的文件
if($file!='.' and $file!='..'){
$path = $dir.'/'.$file; //設(shè)置目錄,用于含有子目錄的情況
if(is_dir($path)){
}elseif(is_file($path)){
$filesize[] = round((filesize($path)/1024),2);//獲取文件大小
$filename[] = $path;//獲取文件名稱
$filetime[] = date("Y-m-d H:i:s",filemtime($path));//獲取文件最近修改日期
$return[] = $url.'/'.$file;
}
}
}
@closedir($dh); //關(guān)閉目錄流
array_multisort($filesize,SORT_DESC,SORT_NUMERIC, $return);//按大小排序
//array_multisort($filename,SORT_DESC,SORT_STRING, $files);//按名字排序
//array_multisort($filetime,SORT_DESC,SORT_STRING, $files);//按時(shí)間排序
return $return; //返回文件
}
$dh = @opendir($dir); //打開目錄,返回一個(gè)目錄流
$return = array();
$i = 0;
while($file = @readdir($dh)){ //循環(huán)讀取目錄下的文件
if($file!='.' and $file!='..'){
$path = $dir.'/'.$file; //設(shè)置目錄,用于含有子目錄的情況
if(is_dir($path)){
}elseif(is_file($path)){
$filesize[] = round((filesize($path)/1024),2);//獲取文件大小
$filename[] = $path;//獲取文件名稱
$filetime[] = date("Y-m-d H:i:s",filemtime($path));//獲取文件最近修改日期
$return[] = $url.'/'.$file;
}
}
}
@closedir($dh); //關(guān)閉目錄流
array_multisort($filesize,SORT_DESC,SORT_NUMERIC, $return);//按大小排序
//array_multisort($filename,SORT_DESC,SORT_STRING, $files);//按名字排序
//array_multisort($filetime,SORT_DESC,SORT_STRING, $files);//按時(shí)間排序
return $return; //返回文件
}