Config文件包含:2个属性,7个方法。个中2个属性为私有静态属性,外部不可访问。7个方法为公有静态方法,外部可以直接用类名访问,不须要实例化。
三类配置目录:默认配置目录,自定义配置目录,扩展配置目录。无论采取哪一种配置目录,终极都会于运用配置文件合并输出。系统application下的config.php与框架thinkphp下的convention.php这两个文件为默认文件,常日建议不要修正。

运用配置:application目录
模块配置:application/模块目录
2.自定义配置目录入口文件中添加:CONF_PATH常量
按常量约定创建对应配置目录
3.扩展配置目录在application/模块目录中创建extra目录
文件名->配置名,内容->配置名
配置文件Config格式四种配置文件格式:数组,ini,xml,json。个中数组较为常用,无论哪一种格式配置文件,终极都因此Array数组键值对的办法返回。
场景配置场景配置,可以看到文件级的动态配置,它为框架的利用者,供应了一种在分外的环境下,简便的办理方案。
1.修正运用或模块配置文件中的:‘app_status’,将值设置为,如:home;2.在与该配置文件同级的目录下,创建与场景名称同名的配置文件,如home.php;3.再次实行,将会自动根据场景配置文件(home.php),更新当前运用的配置文件。模块配置为降落运用的繁芜度,供应安全性,绝大多数情形下,模块配置用得并不多,但如果你有个性化需求时,利用模块设置会方便很多。
1.模块可以有自己的配置文件,独立配置文件和场景配置文件;2.模块配置的优先级高于运用配置,相同配置项会覆盖掉运用汇总的配置项;3.模块默认配置文件名是:config.php;4.模块默认独立配置文件有二个:database.php,validate.php;5.模块场景配置文件名,根据‘app_status’参数值确定。其它位置的配置文件
加载任意位置,非php格式的配置文件,不仅提高了灵巧性,还为其它运用供应了一个配置接口。
1.如果配置文件是php文件
\think\Config::load(APP_PATH.'完全文件名'); //利用绝对路径加载,默认返回数组
2.如果配置文件是其它格式:ini,xml,json等
\think\Config::parre(APP_PATH.'完全文件名'.'ini'); //利用绝对路径加载,默认返回数组
把稳:读取其它位置的配置文件,都是动态加载,须要在掌握器中的方法中实行加载。
读取配置项一.读取配置项
1.类方法:Config::get('配置参数'),参数为空则是获取全部配置项;2.利用助手函数:config('配置参数'),参数解释与Config::get()玩完一样;3.读取二级配置项,参数与值之间用.(点)进行连接。二.判断某配置项是否存在
1.类方法:Config::has('配置参数');//返回布尔值;2.助手函数:config('?配置参数');//返回布尔值。设置配置项在掌握器的方法中,动态设置配置项,可以临时改变某个配置项,优先级也是最高
一.类方法:\think\Config.php
1.逐个配置:Config::set('配置参数',参数值);2.批量配置:Config::set('数组');3.二级配置:Config::set('配置参数','数组')。二.助手函数:config()
1.逐个配置:config('配置参数','参数值');2.批量配置:config('数组');3.二级配置:config('配置参数','数组')。创建独立配置文件将运用模块中的部分可归类的配置独立出来,单独创建配置文件来加载,可以使我们的祝配置文件加载更快,实行效率更高。
1.用户自定义的独立配置文件必须放在运用或模块下面的extra目录下面;2.默认独立配置文件dtabase.php[数据库],validate.php[验证规则]既可以放在extra下面,也可以放在与运用或模块同级的目录下面。如果放在extra目录下面,优先级大于放在运用或模块的同级目录下面;3.文件名便是配置项名称,文件返回一个数组。模块配置优先级框架配置分级管理,可以最大限度的知足用户对运用运行环境的个性化需求,配置优先级的观点非常主要。
老例配置(convention.php,config.php) < 运用配置(运用配置 < 独立配置 < 场景配置) < 模块配置(运用配置 < 独立配置 < 场景配置) < 动态配置(set)
配置项的浸染域配置项的浸染域,类似于类或函数的命名空间,便是配置项对用户的可见性,随着运用规模的扩大,配置浸染域的效果就越明显。
1.浸染域与命名空间的观点类似,便是配置项的可见范围;2.浸染域的在表现形式上与二维数组是一样的;3.切换浸染域利用:Config::range('浸染域');4.可以将独立配置项归纳到浸染域进行管理,也可以动态设置。