2013-02-22 4 views
1

나는 폴더에 수백만 개의 파일이 있으며 각 하위 폴더에는 수천 개의 파일로 구성된 여러 하위 폴더가 있습니다. glob 함수를 사용하여 주어진 폴더의 모든 파일을 나열 할 수 있지만이 경우에는 매우 높은 나는 PHP 치명적인 오류가 나타납니다. 허용 된 메모리 크기 exhaused 더 많은 메모리를 할당하려고합니다. 그 하위 폴더에 하나의 php.ini 파일을 유지함으로써 수행 할 수 있지만 정확히 원하는 것은 .txt 확장명을 내림차순으로 나열하므로 더 큰 파일이 맨 위에 표시됩니다. 더 작은 파일은 맨 밑에있을 것이다. 그러나 나는 수백만 개의 파일을 나열 할 수 없다고 말했고, mysql은 페이지를 현명하게 나열하거나 상위 100 개의 파일을 나열 할 수있다. 다음에 클릭 할 때 내림차순으로 나열 될 것이다. 페이지에 다음 100-200 항목이 표시되지만 서버에 과도한 부하가 발생하지 않으면 서 데이터베이스의 모든 세부 정보를 저장할 수있는 방법이 없다면 데이터베이스를 사용하고 싶지 않습니다.하위 폴더 문제 목록 파일

 <?php 
     foreach (glob("files/*") as $filename) { 
     echo "uploads/" . "$filename" . "\n</br>"; 
    } 
    ?> 

답변

0

opendir glob(); 이 같은

시도 뭔가 :

function printdirs($path) { 
if ($handle = opendir($path)) { 
    while (false !== ($entry = readdir($handle))) { 
     if ($entry != "." && $entry != "..") { 
      if(is_dir($path.'/'.$entry)) 
       printdirs($path.'/'.$entry); 
      else 
      echo $path . "/" . $entry . "\n</br>"; 
     } 
    } 
    closedir($handle); 
}} 

printdirs('uploads'); 
+1

난 내 목표 – wayenjoy

+0

답 일부에 확장하십시오 달성 할 수있는 방법을 알려주세요. – MikeSmithDev

+0

@ MikeSmithDev 내가 원하는 걸 얻고있다 – wayenjoy

관련 문제