2011-08-31 2 views
2

내가 하위 폴더의 모든 하위 폴더와 파일을 보려면이 스크립트를 사용하고 수정 날짜 별 폴더 스캔 정렬 된 파일PHP는 재귀

function readfolder($dir) 
    { 
     global $tfile,$tdir;$i=0;$j=0;$myfiles; 
     $myfiles[][] = array(); 
     if (is_dir($dir)) { 
      if ($dh = opendir($dir)) { 
       while (($file=readdir($dh)) !== false) { 
        if (!is_dir($dir."\\".$file)) 
        { 
         $tfile[$i]=$file; 
         $i++; 
         echo $dir."\\".$file." <b>File</b><br>"; 
        } 
        else { 
         if (($file != ".") && ($file != "..")) { 
         $tdir[$j]=$file; 
         echo $dir."\\".$file." <b>Directory</b><br>"; 
         readfolder($dir."\\".$file); 
         $j++; 
         } 
        } 
       } 
       closedir($dh); 
      } 
     } 
    } 

    readfolder("."); 

누군가 내가 그래서 filemtime 기능 (또는 무엇이든)를 사용할 수있는 방법을 말해 줄 수 있습니까 하위 날짜와 파일을 수정 날짜별로 정렬 할 수 있습니까?

답변

7

SPL DirectoryIterator을 살펴보십시오. 현재 수행중인 작업보다 깔끔하고 재귀 적으로 작업하기 쉽습니다. 또한 적절한 mtime 메소드도 있습니다.

+1

spl에 재귀 적 디렉토리 반복자가 있습니다. http://docs.php.net/class.recursivedirectoryiterator – VolkerK

+0

+1 SPL에 대한 좋은 소식을 전하기 위해. –

+0

감사합니다. @VolkerK - 내가 어떻게 기억하지 못했는지/기억하지 못했습니다. 내 방어에서, 그것은 아직 일찍! –