我的 Yii 应用程序由 4 个模块组成。每个模块都有自己的配置文件 main.php,仅列出 url 管理器的配置。我在应用程序目录的 /config/main.php 中有所有其他配置。有没有办法将每个模块配置到主配置文件中?
我不确定您是否使用
Yii 1 or 2
。您的问题显示为 Yii
,但被标记为 yii2
。
如果是 Yii 1,那么试试这个 -
您有 4 个模块。它们必须位于
/protected/modules/MODULE_NAME1
,/protected/modules/MODULE_NAME2
,还有另外两个。
每个模块都有自己的
main.php
,由UrlManager
数组组成。
假设每个 config
文件夹中有一个 MODULE_NAME
文件夹,其中有 main.php
。
/protected/modules/MODULE_NAME1/config/main.php
。
现在,在
index.php
中,您必须有一行代码为 $config=dirname(__FILE__).'/protected/config/main.php';
这就是获取
main.php
(located at /protected/config/main.php
) 数据的方式。
因此,如果您想添加更多配置数组,只需获取每个配置数组并与主数组合并即可。
例如:
$config = array_merge(
require(dirname(__FILE__).'/protected/config/main.php'),
require(dirname(__FILE__).'/protected/modules/MODULE_NAME1/config/main.php'),
require(dirname(__FILE__).'/protected/modules/MODULE_NAME2/config/main.php'),
require(dirname(__FILE__).'/protected/modules/MODULE_NAME3/config/main.php'),
require(dirname(__FILE__).'/protected/modules/MODULE_NAME4/config/main.php'),
);
确保从模块的
arrays
返回的 main.php
具有与 urlManager
相同的结构。