thinkPHP5.0框架配置格式、加载解析与读取方法
2018-09-21 08:56
本文实例讲述了thinkPHP5.0框架配置格式、加载解析与读取方法。分享给大家供大家参考,具体如下:
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数组之外,还可以使用json/xml/ini等其他格式支持(通过驱动的方式扩展)。
例如,我们可以使用下面的方式读取json配置文件:
ini格式配置示例:
DEFAULT_MODULE=Index ;默认模块
URL_MODEL=2 ;URL模式
SESSION_AUTO_START=on ;是否开启session
xml格式配置示例:
<config> <default_module>Index</default_module> <url_model>2</url_model> <session_auto_start>1</session_auto_start> </config>
json格式配置示例:
{ default_module:Index, url_model:2, session_auto_start:True }
二级配置
配置参数支持二级,例如,下面是一个二级配置的设置和读取示例:
$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);
读取配置参数
设置完配置参数后,就可以使用get方法读取配置了,例如:
echo Config::get(配置参数1);
系统为get方法定义了一个助手config,以上可以简化为:
echo config(配置参数1);
读取所有的配置参数:
dump(Config::get()); // 或者 dump(config());
或者你需要判断是否存在某个设置参数:
Config::has(配置参数2);
如果需要读取二级配置,可以使用:
echo Config::get(配置参数.二级参数);
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。