Zend Framework 2:自定义配置为Zend \ Config \ Config或普通PHP数组,推荐的方法是什么?

时间:2015-04-26 20:43:20

标签: php zend-framework2

在Zend Framework 2中,我编写了一个带有自定义配置选项的模块。

使用服务定位器获取选项,然后将其传递给在工厂内初始化的对象。

由于我的配置是PHP数组格式,我可以传递数组,或者我可以先创建Zend\Config\Config的新实例并将其传递给新对象。

我尝试了两种方式&它们都有效,但在ZF2和ZF2中这样做的推荐方法是什么?为什么?使用Zend\Config\Config有什么好处吗?

特别是因为我刚才注意到可以使用ConfigtoArray()强制转换回数组我很好奇可能会受益。

3 个答案:

答案 0 :(得分:1)

通过使用该对象,您将使用Zend固有的OOP,并且它具有基本阵列不可用的功能,并且可以扩展为在需要时使用自定义业务逻辑。

IE,也许会出现一个会改变其中一个配置选项的情况,但其余的都是相同的。

答案 1 :(得分:0)

如果我正在为其他人开发项目,我想给他们一定级别的配置访问权限,这样他们就没有任何理由深入研究代码本身。我将在数据库中创建一个名为'settings'或'config'的表,管理员可以通过表单访问该表,并且数据填充php配置数组。为了做到这一点,PHP数组格式是可行的方法。

(“a”推荐,不一定是“推荐方式”)

答案 2 :(得分:0)

大多数模块只是添加到全局配置中,可以通过$serviceManager->get('config')

访问

这样,您的配置可以稍后通过config_cache_enabled中的application.config.php进行缓存,用户可以使用其本地配置覆盖配置选项。

如果您的模块配置与全局配置机制无关,则由您决定如何存储/管理它。将它保存为数组更简单,而将其用作Zend\Config\Config可以使用各种工具进行配置(ini编写器,数据库等)。