Kraken\Filesystem\Filesystem::getFiles PHP Method

getFiles() public method

public getFiles ( $directory = '', $recursive = false, $filterPatterns = [] )
    public function getFiles($directory = '', $recursive = false, $filterPatterns = [])
    {
        try {
            $contents = $this->fs->listContents($directory, $recursive);
            if (!$contents) {
                if (!$this->exists($directory)) {
                    throw new ReadException("Directory {$directory} does not exist.");
                }
                return [];
            }
            $proxy = $this;
            $filterPatterns = (array) $filterPatterns;
            $filter = function ($object) use($proxy, $filterPatterns) {
                if ($object['type'] !== 'file') {
                    return false;
                }
                foreach ($filterPatterns as $filterPattern) {
                    if (!$proxy->match($filterPattern, $object['basename'])) {
                        return false;
                    }
                }
                return true;
            };
            return array_values(array_filter($contents, $filter));
        } catch (Error $ex) {
        } catch (Exception $ex) {
        }
        throw new ReadException("Directory {$directory} files could not be listed.", $ex);
    }