thinkPHP5.0框架配置格式、加载解析与读取方法

转载  发布时间:2017年03月17日 10:38:42   作者:chinalorin   我要评论

这篇文章主要介绍了thinkPHP5.0框架配置格式、加载解析与读取方法,结合实例形式详细分析了thinkPHP5.0框架配置的常用格式,加载解析方法,读取方法等相关操作技巧,需要的朋友可以参考下

本文实例讲述了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配置文件:

Config::parse(APP_PATH.'config/config.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程序设计有所帮助。

相关文章

  • 基于PHP 面向对象之成员方法详解

    基于PHP 面向对象之成员方法详解

    本篇文章是基于PHP 面向对象之成员方法详解。需要的朋友参考下
    2013-05-05
  • PHP生成随机密码类分享

    PHP生成随机密码类分享

    这篇文章主要介绍了PHP生成随机密码类分享,生成的密码包含大小写英文字母及数字,需要的朋友可以参考下
    2014-06-06
  • PHP 自动加载的简单实现(推荐)

    PHP 自动加载的简单实现(推荐)

    下面小编就为大家带来一篇PHP 自动加载的简单实现(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • CI框架学习笔记(二) -入口文件index.php

    CI框架学习笔记(二) -入口文件index.php

    本文介绍的是CI框架的入口文件index.php的相关资料,需要的朋友可以参考下
    2014-10-10
  • php后台多用户权限组思路与实现程序代码分享

    php后台多用户权限组思路与实现程序代码分享

    很多时候我们再开发过程中需要考虑到多用户权限问题,这篇文章大家可以参考下
    2012-02-02
  • php不用正则验证真假身份证

    php不用正则验证真假身份证

    以前我要验证身份证我们多半会使用正则判断用户输入是不是15位或18位的全数字,然后来判断身份证是否合法了,这种方法只是最基础的,下面提供的这个身份证验证,可以识别真假身份证哦
    2013-11-11
  • CI框架中数据库操作函数$this->db->where()相关用法总结

    CI框架中数据库操作函数$this->db->where()相关用法总结

    这篇文章主要介绍了CI框架中数据库操作函数$this->db->where()相关用法,结合实例分析了or_where()、where_in()、or_where_in()、where_not_in()及or_where_not_in()等函数的使用技巧,需要的朋友可以参考下
    2016-05-05
  • laravel5.4利用163邮箱发送邮件的步骤详解

    laravel5.4利用163邮箱发送邮件的步骤详解

    发送邮件是我们日常在开发中必不可少会遇到的一个需求,下面这篇文章主要给大家介绍了关于laravel5.4利用163邮箱发送邮件的步骤,文中通过示例代码和图片介绍的非常详细,需要的朋友可以参考下。
    2017-09-09
  • thinkPHP5分页功能实现方法分析

    thinkPHP5分页功能实现方法分析

    这篇文章主要介绍了thinkPHP5分页功能实现方法,结合实例形式较为详细的分析了thinkPHP5实现分页功能的具体步骤与相关操作技巧,需要的朋友可以参考下
    2017-10-10
  • PHP采集类Snoopy抓取图片实例

    PHP采集类Snoopy抓取图片实例

    这篇文章主要介绍了PHP采集类Snoopy抓取图片实例,Snoopy是一个强大的PHP采集类,可以用来开发一些采集程序和小偷程序,需要的朋友可以参考下
    2014-06-06

最新评论