2017-01-03 102 views

回答

0

請試試這個

function getDirContents($dir) { 
    $handle = opendir($dir); 
    if (!$handle) return array(); 
    $contents = array(); 
    while $entry = readdir($handle)) { 
     if ($entry=='.' || $entry=='..') continue; 

     $entry = $dir.DIRECTORY_SEPARATOR.$entry; 
     if (is_file($entry)) { 
      $contents[] = $entry; 
     } else if (is_dir($entry)) { 
      $contents = array_merge($contents, getDirContents($entry)); 
     } 
    } 
    closedir($handle); 
    return $contents; 
} 

$directoryPath = 'Path to folder'; 
$getDirContents = getDirContents($directoryPath); 
echo "<pre>"; 
print_r(getDirContents); 
echo "</pre>"; 
+0

爲什麼OP不知道它在做什麼?一個好的答案應該伴隨__some解釋___ – Thamilan

0

只是看看PHP的自己DirectoryIterator對象,它是比單功能更快,更詳細。

$dir = new DirectoryIterator(dirname(__FILE__)); 
foreach ($dir as $fileinfo) { 
    if (!$fileinfo->isDot()) { 
     var_dump($fileinfo->getFilename()); 
    } 
} 

這段代碼直接取出文檔。它採用當前執行文件的當前目錄並遍歷它。只要當前的$ fileinfo不是一個點,它就會轉儲該目錄中文件和子目錄的文件名。