qingbing/php-config

config 配置的设置和获取.

1.0.1 2018-12-07 03:16 UTC

README

描述

获取相关配置信息,可以单独使用

注意事项

  • 配置最终获取逻辑:读取分组,读取对应的环境配置进行对应分组的覆盖(不追加,所以分组配置必须写全,否则环境配置不会生效)
  • 配置读取默认文件为"application"
  • 配置读取默认为全部,可以指定获取文件中具体某个键值的配置
  • 在各个 "env" 配置覆盖遵循以下规则
    • 以文件为键值
    • 文件中没有的键值会被舍弃
  • 配置默认存放目录:./../conf/,可通过以下代码在入口文件改变
  • 如果值为数组,在环境中覆盖时必须将整个数组全部重新配置
define("CONFIG_PATH", realpath(".") . "/conf");
  • 配置缓存默认存放目录:./../runtime/,可通过以下代码在入口文件改变
define("RUNTIME_PATH", realpath(".") . "/runtime");
  • 环境配置存放路径: {$CONFIG_PATH}/env/{$PHP_ENV}.ini;环境变量可以通过以下代码在入口文件改变
// 建议配置环境变量:dev、test、demo、product
define("PHP_ENV", "dev");

使用方法

// 默认获取为"application"的无类型配置
$configs = Config::getInstance()->getAll();
var_dump($configs);
$configs = Config::getInstance("application")->getAll();
var_dump($configs);

// 获取具体文件所有配置
$configs = Config::getInstance("database", "master")->getAll();
var_dump($configs);
// 获取具体id的配置信息
$configs = Config::getInstance("database", "slave")->getById('dsn');
var_dump($configs);

====== 异常代码集合 ======

异常代码格式:1002 - XXX - XX (组件编号 - 文件编号 - 代码内异常)

 - 无