예제 #1
0
파일: UnitTest.php 프로젝트: rsms/phpab
 /** @return void */
 private function importFilesInDir($path, $recursive, $filenameFilterRE = null, $checkClasses = false)
 {
     foreach (scandir($path) as $file) {
         if ($file[0] == '.') {
             continue;
         }
         $filepath = $path . '/' . $file;
         if (strrchr($file, '.') == '.php') {
             if ($filenameFilterRE && !preg_match($filenameFilterRE, $file)) {
                 continue;
             }
             if ($checkClasses) {
                 $guessedClass = substr($file, 0, -4);
                 if (class_exists($guessedClass)) {
                     continue;
                 }
             }
             require_once $filepath;
         } elseif ($recursive && is_dir($filepath) && is_readable($filepath)) {
             PHP::addClasspath($filepath);
             $this->importFilesInDir($filepath, $recursive, $filenameFilterRE, $checkClasses);
         }
     }
 }