public static function connect($section = 'default') { static $caches = []; if (isset($caches[$section])) { return $caches[$section]; } $conf = \app\Config::load('database', $section); return $caches[$section] = new self($conf); }
private static $config; public static function load() { $yaml = new Yaml(); self::$config = $yaml->parse(file_get_contents("../app/config/config.yml")); } public static function get($key = null) { if ($key !== null) { return self::$config[$key]; } else { return self::$config; } } } Config::load(); $path = explode('/', $_SERVER["PATH_INFO"] ? $_SERVER["PATH_INFO"] : "/default"); array_shift($path); $ctrl = array_shift($path); if (count($path)) { $action = array_shift($path); } else { $action = "index"; } try { $ctrlClass = "App\\Controllers\\Ajax\\" . $ctrl . "Controller"; $ctrlAction = $action . "Action"; $controller = new $ctrlClass(); echo $controller->{$ctrlAction}(); } catch (Exception $e) { }
<?php require_once 'engine/utils.php'; require_once 'engine/autoload.php'; Autoload::init('config/autoload.php'); use App\Config, App\Request, App\User, App\Route, App\View, App\Timer, App\Debug, App\Mysql, App\Response; try { Config::load('config/settings.php'); Config::applyHostSettings('config/hosts.php'); Mysql::setHost(Config::get('dbConnection')); Timer::start(); User::startSession(); Request::parse(); Route::add(['/dumper' => 'dumper', '/module' => 'module', '/login' => 'login', '/tasks' => 'page', '/profile' => 'page', '/projects' => 'page', '/workspace' => 'page', '/404' => 'error', '/' => 'page']); Route::go(); Timer::showExecutionTime(); Mysql::showResources(); Response::out(); } catch (\Exception $e) { Debug::showException($e); }