2013-11-21 4 views
0

디렉토리에있는 모든 파일과 그 모든 서브 디렉토리의 목록을 얻고 싶습니다. 다음 코드를 만들었지 만 빈 배열을 왜 계속 제공하는지 이해할 수 없습니다. array_merge가 내 물건을 병합하지 않는 것과 같습니다. 당신의 도움에 미리디렉토리에 파일을 반복적으로 나열하십시오.

array('file_1', 'file_2', 'file_3, ...) 

감사 :

public static function get_all_files($dir) { 
    $array_files = array(); 
    $files = scandir($dir); 
    foreach ($files as $file) { 
     if ($file == '.' || $file == '..') continue; 
     if (is_dir($dir.'/'.$file)) array_merge($array_files, self::get_all_files($dir.'/'.$file)); 
     else $array_files[] = $file; 
    } 
    return $array_files; 
} 

은 내가 답례로 기대하고있어 같은 배열입니다. 당신이 할 필요가 있으므로

답변

3

array_merge이 병합 된 배열을 반환 :

$array_files = array_merge($array_files, self::get_all_files($dir.'/'.$file)); 
+0

가 대단히 감사합니다, 정말 바보! – Manitoba

관련 문제