配置格式

ThinkPHP支持多种格式的配置格式,但最终都是解析为PHP数组的方式。

PHP数组定义

返回PHP数组的方式是默认的配置定义格式,例如:

						
							//项目配置文件
							return
							[
							// 默认模块名
							'default_module'
							=>
							'index',
							// 默认控制器名
							'default_controller'
							=>
							'Index',
							// 默认操作名
							'default_action'
							=>
							'index',
							//更多配置参数
							//...
							];
						
					

配置参数名不区分大小写(因为无论大小写定义都会转换成小写),新版的建议是使用小写定义配置参数的规范。

还可以在配置文件中可以使用二维数组来配置更多的信息,例如:

						
							//项目配置文件
							return
							[
							'cache'
							=> [
							'type'
							=>
							'File',
							'path'
							=> CACHE_PATH,
							'prefix'
							=>
							'',
							'expire'
							=>
							0,     ], ];
						
					

其他配置格式支持

默认方式为PHP数组方式定义配置文件,你可以在入口文件定义CONF_EXT常量来更改为其它的配置类型:

						
							// 更改配置格式为ini格式
							
								define
							('CONF_EXT',
							'.ini');
						
					

配置后,会自动解析支持的配置类型,包括.ini.xml.json 和.php 在内的格式支持。

5.0版本开始支持yaml配置格式支持

ini格式配置示例:

						
							default_module=Index ;默认模块
							default_controller=index ;默认控制器
							default_action=index ;默认操作
						
					

xml格式配置示例:

						
							<config>
							<default_module>Index</default_module>
							<default_controller>index</default_controller>
							<default_action>index</default_action>
							</config>
						
					

json格式配置示例:

						{
							"default_module":"Index",
							"default_controller":"index",
							"default_action":"index"
							}
						
					

二级配置

配置参数支持二级,例如,下面是一个二级配置的设置和读取示例:

						$config = [
							'user'
							=>  [
							'type'
							=>
							1,
							'name'
							=>
							'ThinkPHP',     ],
							'db'
							=>  [
							'type'
							=>
							'mysql',
							'user'
							=>
							'root',
							'password'
							=>
							'',     ], ];
							// 设置配置参数
							Config::set($config);
							// 读取二级配置参数
							echo
							Config::get('user.type');
							// 或者使用助手函数
							echo
							config('user.type');
						
					

系统不支持二级以上的配置参数读取,需要手动分步骤读取。
有作用域的情况下,仍然支持二级配置的操作。

如果采用其他格式的配置文件的话,二级配置定义方式如下(以ini和xml为例):

						
							[user]
							type=1
							name=ThinkPHP
							
								[db]
							type=mysql
							user=rot
							password=''
						
					

标准的xml格式文件定义:

						
							<config>
							<user>
							<type>1</type>
							<name>ThinkPHP</name>
							</user>
							<db>
							<type>mysql</type>
							<user>root</user>
							<password>
							</password>
							</db>
							</config>
						
					

set方法也支持二级配置,例如:

						Config::set([
							'type'
							=>
							'file',
							'prefix'
							=>
							'think'
							],'cache');
					
文档最后更新时间:2018-04-25 18:00:23

文档
目录

深色
模式

切换
宽度