은 메소드로 캡슐화되며, 코드는 다음과 같습니다:
Php 코드
function readFileFromDir($dir) { if (!is_dir($dir)) { return false; } //打开目录 $handle = opendir($dir); while (($file = readdir($handle)) !== false) { //排除掉当前目录和上一个目录 if ($file == "." || $file == "..") { continue; } $file = $dir . DIRECTORY_SEPARATOR . $file; //如果是文件就打印出来,否则递归调用 if (is_file($file)) { print $file . '<br />'; } elseif (is_dir($file)) { readFileFromDir($file); } } }
호출 메소드:
Php 코드
$ dir = ' /home/www/test';
readFileFromDir($dir);
php 매뉴얼을 확인하면 다른 방법인 scandir도 있습니다. 사용되지만 이 방법은 단일 수준 디렉터리의 모든 파일을 한 번에 가져와서 배열에 저장합니다. 디렉터리에 파일이 많으면 중단됩니다.