2012-08-09 2 views
0

나는 디렉토리를 재귀 적으로 나열하고 싶습니다. 지금까지 레벨 1 디렉토리를 나열하는 코드를 작성했습니다. 누구든지 무한히 재귀 할 수있는 방법에 대한 아이디어가 있습니까?ownCloud의 재귀 디렉토리 목록

$res = OC_Files::getDirectoryContent(''); 
$list = array(); 
foreach($res as $file) { 
    if ($file['type'] == 'dir') { 
     $res1 = OC_Files::getDirectoryContent('/'.$file['name']); 
     foreach($res1 as $res2) { 
      if ($res2['type'] == 'file') $list[] = $file['name'].'/'.$res2['name']; 
     } 

    } else $list[] = $file['name']; 
} 

foreach($list as $entry) 
echo $entry.'</br>'; 

답변

0

이 시도 :

function traverse_directory($dir) { 
    $res = OC_Files::getDirectoryContent($dir); 
    $list = array(); 
    foreach($res as $file) { 
     if ($file['type'] == 'dir') { 
      traverse_directory($dir . '/' . $file['name']) 
     } else { 
      $list[] = $file['name']; 
     } 
    } 
    foreach($list as $entry) { 
     echo $entry.'</br>'; 
    } 
} 

traverse_directory(''); 
+0

감사합니다 많이 도와 주셔서, 그래 당신은 도움을하지 않았다 :) – Stan

+0

없음 문제, 행운을 빌어 요! –