Esempio n. 1
0
 /**
  * 初始化参数
  * @param [array] $config [配置数组]
  */
 public function __construct($config = [])
 {
     if (self::$store == null) {
         self::$store = App::getComponent('cache')->getRedis();
     }
     self::$store->connect($config['host'], $config['port']);
 }
Esempio n. 2
0
 /**
  * 初始化框架
  *
  * 定义常量以及设置一些配置项
  * @param  string $conf 配置文件路径
  * @return 
  */
 protected static function init($conf = '')
 {
     self::$microTime = microtime(true);
     define('BASE_PATH', __DIR__);
     define('DS', DIRECTORY_SEPARATOR);
     // 请求方式 http or cli
     if (isset($_SERVER['argc'])) {
         define('IS_CLI', true);
     } else {
         define('IS_CLI', false);
         $http_type = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' ? 'https://' : 'http://';
         define('HOST_NAME', $http_type . $_SERVER['HTTP_HOST']);
     }
     // 定义css js img 资源的路径
     define('ASSET_PATH', HOST_NAME . '/oa1024/public/');
     // 注册自动加载方法
     spl_autoload_register([__CLASS__, 'autoLoadHandler']);
     // Ioc容器
     self::$container = Container::getInstance();
     App::$config = self::getComponent('config');
     App::$id = App::$config->get('application.id');
     self::loadHooks();
     // session
     if (App::$config->get('session.auto_start', false) == true) {
         App::getComponent('session')->start();
     }
     self::$time = (int) self::$microTime;
     // 服务器操作系统
     define('IS_WIN', stripos(PHP_OS, 'WIN') === false ? false : true);
     defined('APP_PATH') or define('APP_PATH', BASE_PATH);
     // 错误处理函数
     set_error_handler([__CLASS__, 'errorHandler']);
     // 异常处理函数
     set_exception_handler([__CLASS__, 'exceptionHandler']);
     // 注册脚本结束调用的方法
     register_shutdown_function([__CLASS__, 'shutdown']);
 }
Esempio n. 3
0
 public function redirect($controller, $action = '')
 {
     header('Location: ' . App::getComponent('request')->createLink($controller, $action));
     exit;
 }
Esempio n. 4
0
 public function __construct()
 {
     $this->_adapter = App::getComponent('db');
     parent::__construct();
 }
Esempio n. 5
0
 public function login(\models\User $user)
 {
     $this->session->set('user', $user);
     App::getComponent('request')->reGenerateCSRF();
     return true;
 }
Esempio n. 6
0
 public function getCSRF()
 {
     return App::getComponent('session')->get('csrf');
 }