扩展配置可以支持自动加载额外的自定义配置文件,并且配置格式和项目配置一样。 设置扩展配置的方式如下(多个文件用逗号分隔):
// 加载扩展配置文件
'LOAD_EXT_CONFIG' => 'user,db',
假设扩展配置文件user.php
和db.php
分别用于用户配置和数据库配置,这样做的好处是哪怕以后关闭调试模式,你修改db配置文件后依然会自动生效。
如果在应用公共设置文件中配置的话,那么会自动加载应用公共配置目录下面的配置文件Application/Common/Conf/user.php
和Application/Common/Conf/db.php
。
如果在模块(假设是Home模块)的配置文件中配置的话,则会自动加载模块目录下面的配置文件 Application/Home/Conf/user.php
和Application/Home/Conf/db.php
。
默认情况下,扩展配置文件中的设置参数会并入项目配置文件中。也就是默认都是一级配置参数,例如user.php中的配置参数如下:
<?php
//用户配置文件
return array(
'USER_TYPE' => 2, //用户类型
'USER_AUTH_ID' => 10, //用户认证ID
'USER_AUTH_TYPE' => 2, //用户认证模式
);
那么,最终获取用户参数的方式是:
C('USER_AUTH_ID');
如果配置文件改成:
// 加载扩展配置文件
'LOAD_EXT_CONFIG' => array('USER'=>'user','DB'=>'db'),
则最终获取用户参数的方式改成:
C('USER.USER_AUTH_ID');