资讯专栏INFORMATION COLUMN

ThinkPHP 扩展配置注意事项

chaos_G / 2484人阅读

摘要:扩展配置的优先级仅次于动态配置而高于惯例配置,项目配置等。基于扩展配置的以上特性,通常扩展配置是为了某些特殊的需要,而从项目配置里面分离出来的一些配置信息,这样的目的是为了便于维护和管理。

概要

在 ThinkPHP 3.0 中引入了扩展配置。扩展配置的优先级仅次于动态配置而高于惯例配置,项目配置等
项目配置文件在部署模式的时候会纳入编译缓存,也就是说编译后再修改项目配置文件就不会立刻生效,需要删除编译缓存后才能生效。扩展配置文件则不受此限制影响,即使在部署模式下面,修改配置后也可以实时生效。基于扩展配置的以上特性,通常扩展配置是为了某些特殊的需要,而从项目配置里面分离出来的一些配置信息,这样的目的是为了便于维护和管理。

定义扩展配置

扩展配置文件位于项目配置目录下(PS:这个比较重要),如 Conf/user.php,要启用扩展配置,首先需要在项目配置文件里面定义 LOAD_EXT_CONFIG 参数:

"LOAD_EXT_CONFIG"=>"user",
// 还可以定义多个扩展配置文件
"LOAD_EXT_CONFIG"=>"user,db",

如上面的参数定义所示,扩展配置可以是一个或多个配置文件。
编辑 Conf/user.php 文件,写入配置参数:

 2,
    "USER_AUTH_TYPE"     => 1,
);
?>

那么在操作方法里就可以通过 C 方法来读取扩展配置里的参数:

C("USER_TYPE")

在项目配置文件中,也可以以二级配置方式加载加载扩展配置文件:

"LOAD_EXT_CONFIG"=>array("USER"=>"user","DB"=>"db"),

那么同样的 user.php 扩展配置文件,要获取配置参数值的方式改变为:

C("USER.USER_TYPE")

二级配置方式,可以避免大项目中参数冲突问。

避免和系统内置配置文件发生冲突

下面表格中列出的配置文件已经被 ThinkPHP 系统使用,在定义扩展配置文件时,请勿使用下面的文件名:

文件名 说明
config.php 项目配置文件
tags.php 项目行为配置文件
alias.php 项目别名定义文件
debug.php 项目调试模式配置文件(以及项目设置的 APP_STATUS 对应的配置文件)
core.php 项目追加的核心编译列表文件

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/21118.html

相关文章

  • Linux下PHP支持MSSql的配置

    摘要:下面程序员雷雪松就详细的看看下如何配置支持下载并安装,是一套为和允许程序来跟微软和数据库交互的动态库。注意的路径重启查看已经安装的扩展这样扩展就安装完成了,就可以使用相关函数操作数据库了。原文来源程序员雷雪松的个人博客 因为项目以前的数据库为SQLServer(MSSql),客户希望不要换数据库。在当今客户就是上帝的理念下,于是只能采用Linux下PHP操作MSSql。由于之前没什么经...

    张春雷 评论0 收藏0
  • 基于docker, 快速搭建Nginx+Php+https本地开发环境, 免于手动安装PHP扩展

    摘要:是什么主要解决什么问题基于快速搭建本地开发环境已含常用扩展配置文件日志文件和工程代码都在宿主机上方便修改可以解决新人加入团队配置麻烦而且是重复劳动开发环境不一致没问题上了出现各种问题扩展安装有问题比如电脑本地多个版本扩展不一致项目新功能需要 NginxPhpDocker是什么, 主要解决什么问题 基于docker, 快速搭建Nginx+Php本地开发环境(已含常用PHP扩展), ngi...

    khlbat 评论0 收藏0
  • 基于docker, 快速搭建Nginx+Php+https本地开发环境, 免于手动安装PHP扩展

    摘要:是什么主要解决什么问题基于快速搭建本地开发环境已含常用扩展配置文件日志文件和工程代码都在宿主机上方便修改可以解决新人加入团队配置麻烦而且是重复劳动开发环境不一致没问题上了出现各种问题扩展安装有问题比如电脑本地多个版本扩展不一致项目新功能需要 NginxPhpDocker是什么, 主要解决什么问题 基于docker, 快速搭建Nginx+Php本地开发环境(已含常用PHP扩展), ngi...

    AlphaGooo 评论0 收藏0
  • 基于docker, 快速搭建Nginx+Php+https本地开发环境, 免于手动安装PHP扩展

    摘要:是什么主要解决什么问题基于快速搭建本地开发环境已含常用扩展配置文件日志文件和工程代码都在宿主机上方便修改可以解决新人加入团队配置麻烦而且是重复劳动开发环境不一致没问题上了出现各种问题扩展安装有问题比如电脑本地多个版本扩展不一致项目新功能需要 NginxPhpDocker是什么, 主要解决什么问题 基于docker, 快速搭建Nginx+Php本地开发环境(已含常用PHP扩展), ngi...

    Mr_houzi 评论0 收藏0
  • 解读 thinkphp5 源码(一):自动加载

    摘要:索性读一下它的源码。行载入类载入类,这个类比较重要,实现了自动加载。注册错误和异常处理机制加载惯例配置文件接下来我们看一下自动加载的实现方法。所以借助此函数可以达到自动加载。博客链接解读源码一自动加载 听说 TP5 已经 RC4 了,曾经在 RC3 的时候用它写过一个小东西。官方说从 RC4 以后改动不是太大。索性读一下它的源码。然后顺便记录一下,如有错漏,请路过大神多多指正! 入口 ...

    stormzhang 评论0 收藏0

发表评论

0条评论

chaos_G

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<