HippoPHP\Hippo\FileSystem::getAllFiles PHP Method

getAllFiles() public method

public getAllFiles ( $initialDirectory, string $regex = null ) : string[]
$regex string
return string[]
    public function getAllFiles($initialDirectory, $regex = null)
    {
        $directoryIterator = new RecursiveDirectoryIterator($initialDirectory, RecursiveDirectoryIterator::SKIP_DOTS);
        $flattenedIterator = new RecursiveIteratorIterator($directoryIterator);
        $iterator = $regex !== null ? new RegexIterator($flattenedIterator, $regex) : $flattenedIterator;
        $output = [];
        foreach ($iterator as $i) {
            $output[] = $i->getRealpath();
        }
        usort($output, function ($a, $b) {
            return strnatcasecmp($a, $b);
        });
        return $output;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * Builds a list of checks to run.
  */
 private function build()
 {
     foreach ($this->fileSystem->getAllFiles($this->getRootDirectory(), '/^.*\\.php$/') as $filePath) {
         require_once $filePath;
     }
     $this->checks = [];
     foreach (get_declared_classes() as $class) {
         $reflectionClass = new ReflectionClass($class);
         if ($this->canInstantiate($reflectionClass)) {
             $this->checks[] = $reflectionClass->newInstance();
         }
     }
 }
All Usage Examples Of HippoPHP\Hippo\FileSystem::getAllFiles