2012-08-09 63 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 2012-08-09 19:13:41

+0

沒問題,祝你好運! – 2012-08-09 19:13:53