当前位置:首页 > PHP教程 > php文件操作 > 列表

php获取目录下的所有文件并按时间排序

发布:smiling 来源: PHP粉丝网  添加日期:2018-09-21 09:34:04 浏览: 评论:0 

php获取目录中的所有文件名

1、先打开要操作的目录,并用一个变量指向它

打开当前目录下的目录pic下的子目录common。

$handler = opendir(’pic/common’);

2、循环的读取目录下的所有文件

其中$filename = readdir($handler)是每次循环的时候将读取的文件名赋值给$filename,为了不陷于死循环,所以还要让$filename !== false。一定要用!==,因为如果某个文件名如果叫’0′,或者某些被系统认为是代表false,用!=就会停止循环

  1. while( ($filename = readdir($handler)) !== false )  
  2.       3、目录下都会有两个文件,名字为’.'和‘..’,不要对他们进行操作 
  3.       if($filename != “.” && $filename != “..”) 
  4.       { 
  5.       4、进行处理 
  6.       //这里简单的用echo来输出文件名 
  7.       echo $filename
  8.       } 

5、关闭目录

closedir($handler);

php获取目录下的所有文件并按文件创建时间进行排序,php按文件创建/修改时间排序

  1. function getFile($dir=''){ 
  2.   $num=1;    //用来记录目录下的文件个数 
  3.   $dirname='../testdir'//要遍历的目录名字 
  4.   $dir_handle=opendir($dirname); 
  5.    
  6.   while($file=readdir($dir_handle)){ 
  7.     if($file!="."&&$file!=".."&&$file!="index.php"){ 
  8.     $key = filectime($file)*1000+rand(100,999); //根据文件创建时间生成key 
  9.     $files[$key] = $file
  10.     $num++; 
  11.     } 
  12.   } 
  13.   ksort($files); 
  14.   foreach($files as $ky => $val){ 
  15.     $dirFile=$dirname."/".$val
  16.     $res .= tabledata($num.'|<a href="'.$val.'" target="_blank">'.$val.'</a>|'.filesize($dirFile).'|'.filetype($dirFile).'|'.date("Y/n/t H:i:s",filemtime($dirFile))); 
  17.   } 
  18.   return $res
  19.   closedir($dir_handle); 

Tags: 文件 时间 目录

分享到: