Exemple #1
0
 /**
  * @see CrossArray::getAll()
  *
  * @param bool $obj 是否返回对象
  * @return array|object
  */
 function getAll($obj = false)
 {
     return CrossArray::init($this->config_data)->getAll($obj);
 }
Exemple #2
0
 /**
  * 生成连接
  *
  * @param string $app_name
  * @param bool $check_app_name
  * @param null|string $controller
  * @param null|array $params
  * @param null|bool $sec
  * @return string
  * @throws CoreException
  */
 private function makeUri($app_name, $check_app_name, $controller = null, $params = null, $sec = null)
 {
     $uri = '';
     $enable_controller_cache = false;
     //在运行过程中,如果url的配置有变化,需要调用cleanLinkCache()来刷新缓存
     if (!isset(self::$url_config_cache[$app_name])) {
         $this_app_name = $app_name;
         if ($check_app_name) {
             $this_app_name = $this->getAppName();
         }
         if ($check_app_name && $app_name != $this_app_name) {
             $config = CrossArray::init(Loader::read(APP_PATH_DIR . $app_name . DIRECTORY_SEPARATOR . 'init.php'));
             $url_config = $config->get('url');
         } else {
             $url_config = $this->config->get('url');
         }
         self::$url_config_cache[$app_name] = $url_config;
     } else {
         $enable_controller_cache = true;
         $url_config = self::$url_config_cache[$app_name];
     }
     $url_params = '';
     $url_controller = $this->makeControllerUri($app_name, $enable_controller_cache, $controller, $url_config);
     if (!empty($params)) {
         $url_params = $this->makeParams($params, $url_config, $sec);
     }
     if (!empty($url_config['ext']) && !empty($url_controller)) {
         switch ($url_config['type']) {
             case 2:
                 $uri .= $url_controller . $url_config['ext'] . $url_params;
                 break;
             case 1:
             case 3:
             case 4:
             case 5:
                 $uri .= $url_controller . $url_params . $url_config['ext'];
                 break;
         }
     } else {
         $uri .= $url_controller . $url_params;
     }
     return $uri;
 }
Exemple #3
0
 /**
  * 读取并解析数据库配置
  *
  * @return CrossArray
  */
 protected function databaseConfig()
 {
     if (!self::$module_config) {
         $link_config_file = $this->getModuleConfigFile();
         self::$module_config = CrossArray::init(Loader::read("::config/{$link_config_file}"));
     }
     return self::$module_config;
 }