* @param match - Regex which checks if the called class matches the pattern * @param search - Search-Regex for the file-string * @param replace - Replace-Pattern for the file-stri*ng */ public static function addFolder($path, $match, $search, $replace) { Autoload::$folders[] = array('path' => $path, 'match' => $match, 'search' => $search, 'replace' => $replace); } } // Register the autoload method in PHP spl_autoload_register('Autoload::load'); // load the Autoload_folders which are defined in your config file if (defined('AUTOLOAD_FOLDERS')) { $autoload_folders = unserialize(AUTOLOAD_FOLDERS); foreach ($autoload_folders as $folder) { Autoload::addFolder($folder[0], $folder[1], $folder[2], $folder[3]); } } /* EXAMPLE: @desc: Define the folders and class patterns. This is sent to the autoloader which decides which file to include @param1: Path of the folder from the root directory @param2: Regex which checks if the called class matches the pattern @param3: Search-Regex for the file-string @param4: Replace-Pattern for the file-string */ // define('AUTOLOAD_FOLDERS', serialize(array( // array('interfaces', '/I[A-Z][a-z]+/', '/^I([A-Z][a-z]+)$/', 'interface.$1.php'), // array('classes', '/.*/', '/^(.*)$/', 'class.$1.php'),