Php 如何通过zend framework 2在另一个模块中注入模块?
我试图理解如何通过zf2创建两个简单的独立模块,其中模块B调用模块A的一些信息/功能 例如: 模块A处理站点的页面 模块B处理现场可用的语言 模块A连接到数据表,其中字段为:[id、标题、内容、语言\u id] 模块B连接到数据表,其中字段为:[id,语言] 模块A[语言id]不是强制性的 模块A需要从模块B获取语言列表。 模块B没有任何其他模块依赖性 我想在不引发异常的情况下禁用模块B。 我想启用模块B并查看模块A表单中的语言选择器Php 如何通过zend framework 2在另一个模块中注入模块?,php,design-patterns,module,zend-framework2,Php,Design Patterns,Module,Zend Framework2,我试图理解如何通过zf2创建两个简单的独立模块,其中模块B调用模块A的一些信息/功能 例如: 模块A处理站点的页面 模块B处理现场可用的语言 模块A连接到数据表,其中字段为:[id、标题、内容、语言\u id] 模块B连接到数据表,其中字段为:[id,语言] 模块A[语言id]不是强制性的 模块A需要从模块B获取语言列表。 模块B没有任何其他模块依赖性 我想在不引发异常的情况下禁用模块B。 我想启用模块B并查看模块A表单中的语言选择器 这可能吗?谢谢在config/Module.config.p
这可能吗?谢谢在
config/Module.config.php
“我的模块”=>数组(“有语言模块”=>true)
然后在模块A中,您可以检查:
$config=$this->getServiceLocator()->get('config');
如果(isset($config['my_module']['have_lang_module']){…}
我不是专家,但我不明白为什么这不起作用。基本上是配置文件
已加载并合并,可供所有模块使用。如果模块B处理语言,如果您禁用模块B,您希望看到什么,而不是表单中的语言选择器?您好,很简单。该功能将不再可用,模块A中的语言信息将不再可见。我想禁用它feature@Marius.C你能给我看看样品吗?我想在模块A中添加模块B而不做任何更改。模块A拦截模块B的存在并激活新功能。这太复杂了吗?嗨,马吕斯,用这种方式你必须修改代码。我想要实现的是通过其他模块在一个模块中创建一个自动的“特性注入”。