bshirey / hierarchical-config
本包最新版本(v1.1.3)没有提供许可证信息。
提供继承和分层配置工具。
v1.1.3
2015-06-26 15:45 UTC
Requires
- php: >=5.4.0
- phpunit/phpunit: 4.7.5
- zendframework/zend-config: 2.5.1
This package is not auto-updated.
Last update: 2024-10-02 07:52:20 UTC
README
======================
正在准备文档。这是一个辅助创建分层配置的工具,其中配置数据层合并,上层覆盖下层。
如何使用
============
首先,您必须将此库添加到您的项目中。如果您使用的是composer,请尝试以下命令:> composer require bshirey/hierarchical-config:1.*
此库本身并不做太多,但需要在您的项目中进行一些设置。至少,您必须实现自己的ConfigBuilder,并自定义build()函数的实现。ConfigBuilder负责实例化ConfigInterface对象。ConfigBuilder负责以分层的方式堆叠ConfigInterface对象。
例如
public class MyApplicationConfigBuilder implements ConfigBuilder { public function build($options = array()) { $config = new GenericConfig($options); $config ->push(new FileConfig($options)) ->push(new GlobalsConfig($options)) ->push(new EnvConfig($options)); return $config; } ...
然后您的应用程序需要设置ConfigFactory单例,类似于以下内容
ConfigFactory::getInstance() ->setOptions($options) ->setBuilder(new MyApplicationConfigBuilder());
最后,您必须使您的可配置类/对象使用HierarchicalConfig\Configurable特性
use HierarchicalConfig\Configurable; public class MyApplicationClass { use Configurable; ...
如何运行测试
======================
这里简要概述了一些细节。不用说,您需要安装composer、phpunit以及任何依赖项。
- 如果没有安装,请运行composer install。这将安装项目依赖项。
- 运行phpunit。
- 让测试运行。