require "framework/core.php"; Framework\Core::initialize(); // plugins $path = APP_PATH . "/application/plugins"; $iterator = new DirectoryIterator($path); foreach ($iterator as $item) { if (!$item->isDot() && $item->isDir()) { include $path . "/" . $item->getFilename() . "/initialize.php"; } } // 3. load and initialize the Configuration class $configuration = new Framework\Configuration(array("type" => "ini")); Framework\Registry::set("configuration", $configuration->initialize()); // 4. load and initialize the Database class – does not connect $database = new Framework\Database(); Framework\Registry::set("database", $database->initialize()); // 5. load and initialize the Cache class – does not connect $cache = new Framework\Cache(); Framework\Registry::set("cache", $cache->initialize()); // 6. load and initialize the Session class $session = new Framework\Session(); Framework\Registry::set("session", $session->initialize()); // 7. load the Router class and provide the url + extension $router = new Framework\Router(array("url" => isset($_GET["url"]) ? $_GET["url"] : "home/index", "extension" => !empty($_GET["extension"]) ? $_GET["extension"] : "html")); Framework\Registry::set("router", $router); // include custom routes include "public/routes.php"; // 8. dispatch the current request $router->dispatch(); // 9. unset global variables unset($configuration);
// load config $config = new Framework\Config(array('type' => 'ini')); Framework\Registry::set('config', $config->initialize()); unset($config); // load functions $functions = new Framework\Functions(); Framework\Registry::set('functions', $functions->initialize()); unset($functions); // load session $session = new Framework\Session(); Framework\Registry::set('session', $session); unset($session); // load cookie $cookie = new Framework\Cookie(); Framework\Registry::set('cookie', $cookie); unset($cookie); $input = new Framework\Input(); Framework\Registry::set('input', $input); unset($input); $validator = new Framework\Validator(); Framework\Registry::set('validator', $validator); unset($validator); // load database $database = new Framework\Database(); Framework\Registry::set('database', $database->initialize()); unset($database); // load router $router = new Framework\Router(); Framework\Registry::set('router', $router); unset($router); Framework\Registry::get('router')->dispatch();