app; } public function getDI() { return $this->di; } protected function initAppEnv() { require __DIR__ . '/Helper.php'; } protected function initAppConfig() { $this->config = require config_path('config.php'); } protected function initAppSetting() { ini_set('date.timezone', $this->config['timezone']); if ($this->config['env'] == ENV_DEV) { ini_set('display_errors', 1); error_reporting(E_ALL); } else { ini_set('display_errors', 0); error_reporting(0); } } abstract public function handle(); abstract protected function registerLoaders(); abstract protected function registerServices(); abstract protected function registerErrorHandler(); }