1 <?php 2 3 include_once __DIR__ . '/Autoloader.php'; 4 5 \Matrix\Autoloader::Register(); 6 7 8 abstract class FilesystemRegexFilter extends RecursiveRegexIterator 9 { 10 protected $regex; 11 public function __construct(RecursiveIterator $it, $regex) 12 { 13 $this->regex = $regex; 14 parent::__construct($it, $regex); 15 } 16 } 17 18 class FilenameFilter extends FilesystemRegexFilter 19 { 20 // Filter files against the regex 21 public function accept() 22 { 23 return (!$this->isFile() || preg_match($this->regex, $this->getFilename())); 24 } 25 } 26 27 28 $srcFolder = __DIR__ . DIRECTORY_SEPARATOR . 'src'; 29 $srcDirectory = new RecursiveDirectoryIterator($srcFolder); 30 31 $filteredFileList = new FilenameFilter($srcDirectory, '/(?:php)$/i'); 32 $filteredFileList = new FilenameFilter($filteredFileList, '/^(?!.*(Matrix|Exception)\.php).*$/i'); 33 34 foreach (new RecursiveIteratorIterator($filteredFileList) as $file) { 35 if ($file->isFile()) { 36 include_once $file; 37 } 38 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body