您的位置:首页 > 编程语言 > PHP开发

ThinkPHP 5.0 配置文件

2017-07-13 23:08 155 查看

概要

最近一段时间开始学习TP 5.0,你很难找到3.2版本的影子。在使用的时候感觉到和3.2又是那么的一样。配置文件大体上还是分为公共配置和模块配置,只不过又新增了环境配置和场景配置。

主要功能

可以改变配置文件目录

TP5.2可以改变配置文件目录,默认的配置文件是在应用目录下,在入口文件设置
define('CONF_PATH','/conf/')
配置文件的目录,就可以改变配置文件目录。这是我的入口的配置:

// [ 应用入口文件 ]
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
//定义配置文件目录
define('CONF_PATH',__DIR__.'/../conf');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';


惯例配置

所谓的惯例配置,可以理解为系统只带的配置,这和3.2版本是一样的,惯例配置文件在==thinkphp==目录下的==convention.php==文件里。文件里的内容建议不修改,使用默认值。需要修改可以在应用的配置文件中修改

公共配置

公共配置文件放在配置目录下就可以,文件名必须是==config.php==,文件里的内容可以根据自己的情况进行配置。第一次使用不知道配置什么参数,可以访问惯例配置文件中的。

公共配置实用于所有的应用,如果觉得不合适,可以在模块下建立配置文件进行配置

比如缓存配置,阿里云配置,数据库配置是不同的文件怎么办,在目录下,可以在conf目录下建立==database.php== ==mermache.php==等等

扩展配置

扩展配置在3.2也是有的,只是载入的方式不一样。在TP5.0扩展配置必须在==extra==目录下,也就是这样==conf/extra/database.php==,在获取扩展配置的信息的时候,扩展配置默认在
$config['database']
数组下,而这里的==database==来自于文件名

$cnofig=\think\Config::get('database')


场景配置

在TP5.0中新增一个场景配置,可以根据不同的应用场景,加载不同的配置,比如我在测试项目,使用测试配置。项目上线了使用线上配置。

在config.php文件写上你要使用的场景
return [ ['app_status']='online']
,这里的online就是场景配置文件的名字。

在场景配置文件中写你需要配置的信息,比如我的数据库配置,缓存的配置等等

在项目上线后改掉你要使用的配置文件

模块配置

不同的模块会有不同的配置,如果有在配置文件目录下新建一个目录,目录名和模块名一样,比如admin, 目录接口大致是这样的==conf/admin/config.php==,模块配置也是支持扩展配置,场景配置的。只是作用范围是当前模块

动态配置

有的时候,只是想修改下配置信息,可以动态的修改,可以使用助手函数
config()
, 也可以使用
$config=\think\Config::get()
。 具体如何使用可以查看==helper.php== ==Confg.php==这两个文件

环境配置

TP5.0新增了一个环境配置,就是获取环境信息,具体如何使用参考think官网教程,也可以看Env.php类文件。环境配置不是特别的熟悉,后面的文章再补上

配置覆盖的问题

配置多了,写重复了的就会覆盖,尽可能的少,不要重复设置。优先级大致是这样的

模块配置 > 公共配置

场景配置 > 扩展配置 > 配置文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  thinkphp path