zendframework / zend-config-aggregator
1.2.0
2019-12-27 22:57 UTC
Requires
- php: ^5.6 || ^7.0
- zendframework/zend-stdlib: ^2.7.7 || ^3.1.0
Requires (Dev)
- malukenho/docheader: ^0.1.5
- phpunit/phpunit: ^5.7.21 || ^6.3
- zendframework/zend-coding-standard: ~1.0.0
- zendframework/zend-config: ^2.6 || ^3.0
- zendframework/zend-servicemanager: ^2.7.7 || ^3.1.1
Suggests
- zendframework/zend-config: Allows loading configuration from XML, INI, YAML, and JSON files
- zendframework/zend-config-aggregator-modulemanager: Allows loading configuration from zend-mvc Module classes
- zendframework/zend-config-aggregator-parameters: Allows usage of templated parameters within your configuration
This package is auto-updated.
Last update: 2020-01-29 14:48:17 UTC
README
仓库弃用时间:2019-12-31
此仓库已迁移至 laminas/laminas-config-aggregator。
聚合和合并来自各种格式的配置。支持缓存以实现生产环境中的快速引导。
使用方法
独立的 ConfigAggregator
可以用于合并基于 PHP 的配置文件
use Zend\ConfigAggregator\ConfigAggregator; use Zend\ConfigAggregator\PhpFileProvider; $aggregator = new ConfigAggregator([ new PhpFileProvider('*.global.php'), ]); var_dump($aggregator->getMergedConfig());
使用此提供者,每个文件应返回一个 PHP 数组
// db.global.php return [ 'db' => [ 'dsn' => 'mysql:...', ], ]; // cache.global.php return [ 'cache_storage' => 'redis', 'redis' => [ ... ], ];
结果
array(3) { 'db' => array(1) { 'dsn' => string(9) "mysql:..." } 'cache_storage' => string(5) "redis" 'redis' => array(0) { ... } }
配置按传入的顺序合并,晚些时候的条目具有优先权。
与 zend-config
一起,zend-config-aggregator
还可以用于加载不同格式的配置,包括 YAML、JSON、XML 或 INI
use Zend\ConfigAggregator\ConfigAggregator; use Zend\ConfigAggregator\ZendConfigProvider; $aggregator = new ConfigAggregator([ new ZendConfigProvider('config/*.{json,yaml,php}'), ]);
有关更多详细信息,请参阅文档。