ThinkPHP 5.0 配置文件

来源:互联网 发布:淘宝买家手机号码采集 编辑:程序博客网 时间:2024/06/07 20:33

概要

最近一段时间开始学习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类文件。环境配置不是特别的熟悉,后面的文章再补上

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

    • 模块配置 > 公共配置
    • 场景配置 > 扩展配置 > 配置文件
原创粉丝点击