webiny / config
Webiny 配置组件
v1.6.1
2017-09-29 08:12 UTC
Requires
- php: ^7
- symfony/yaml: ~2.0
- webiny/std-lib: ~1.6
Requires (Dev)
- mybuilder/phpunit-accelerator: dev-master
- phpunit/phpunit: ~6
README
Config
组件从配置文件创建 ConfigObject
实例。目前支持的格式:INI、JSON、PHP、YAML 和自定义驱动。
安装组件
使用 Composer 安装组件是最好的方式。
composer require webiny/config
要获取包的附加版本,请访问Packagist 页面。
用法
要使用 Config
组件,你需要一个配置文件。
示例 INI
[properties]
a = "value"
b.name = "name"
b.value = "value"
以下是一个创建 ConfigObject
的示例
$config = \Webiny\Components\Config\Config::getInstance()->ini('path/to/file.ini');
这将导致 $config 对象包含以下属性
$config->properties->a = 'value'; $config->properties->b->name = 'name'; $config->properties->b->value = 'value';
如果你不想使用 INI 部分,或设置自定义嵌套分隔符,请指定以下参数
$config = \Webiny\Components\Config\Config::getInstance()->ini('path/to/file.ini', false, '_');
你可以使用以下方法以任何格式获取你的配置作为字符串
$string = $config->getAsJson(); $string = $config->getAsPhp(); $string = $config->getAsIni($useSections = true, $nestDelimiter = '.'); $string = $config->getAsYaml($indent = 4);
你还可以使用自定义驱动
$driverInstance = new MyCustomDriver(); $string = $config->getAs($driverInstance);
你还可以合并一个配置与另一个 ConfigObject
或数组
$config->mergeWith($config2);
资源
要运行单元测试,你需要使用以下命令
$ cd path/to/Webiny/Component/Config/
$ composer.phar install
$ phpunit