Exakat\Tasks\Phploc::readRecursiveDir PHP Метод

readRecursiveDir() приватный Метод

private readRecursiveDir ( $dirname, $excludeFiles = [], $excludeDirs = [] )
    private function readRecursiveDir($dirname, $excludeFiles = array(), $excludeDirs = array())
    {
        $dir = opendir($dirname);
        $r = array();
        while (false !== ($file = readdir($dir))) {
            if ($file[0] == '.') {
                continue;
            }
            foreach ($excludeFiles as $part) {
                if (strpos($file, $part) !== false) {
                    continue 2;
                }
            }
            if (is_dir($dirname . '/' . $file) && !in_array($dirname . '/' . $file, $excludeDirs)) {
                $r = $this->readRecursiveDir($dirname . '/' . $file, $excludeFiles, $excludeDirs);
            } else {
                if (substr($file, -4) !== '.php') {
                    continue;
                }
                $r[] = array($dirname . '/' . $file);
            }
        }
        $return = call_user_func_array('array_merge', $r);
        return $return;
    }