ThinkPHP你必须要掌握的配置加载(2)

简介: ThinkPHP你必须要掌握的配置加载

三、了解Yaconf

估计有同学知道Yaconf就是我们牛逼克拉斯的鸟哥写的。


咔咔了解Yaconf后,总结推出这个开源的几点原因。


  • 配置文件过多,导致加载时间过长
  • 配置文件可读性差,需要运行解析
  • 配置文件与代码同属一个项目部署在一起会有安全隐患,同时如果配置文件修改时还需要走上线流程
  • 加大运维与开发协同难度,如果运维需要修改MySQL或者其它配置也需要通知开发进行同步修改

那么在来说一下使用Yaconf的优点


  • 不跟代码在一起,使用专属的配置目录
  • PHP启动时,加载完所有的配置,进行常驻内存,伴随着PHP的生命周期存亡,避免每次请求时解析配置文件,消耗时间
  • 配置文件跟代码分离,就可以借助配置后台管理来统一管理配置信息
  • 配置文件如有发生变化时会进行重载(这里给的建议是使用mv而非cp)
  • 支持类型丰富,例如:字符串、数组、分节、并且还可以在PHP配置文件里边直接使用PHP的环境变量和常量
  • 最后一点就是使用非常简单


在了解了Yaconf可以做什么的时候之后,在去开始下一步的操作,别一上来就是安装、配置、调用,然后一顿操作结束后,不知道是干嘛的,那样就没有任何意义了。


接下来将会介绍在win、linux上安装并且使用


四、Yaconf在window上安装

点击后边的DLL,选择对应的版本

image.png


选择适用的版本


image.png


如何判断什么版本适合自己,对照着我圈起来的几个地方去下载就对了


image.png


然后将这个文件放置到PHP的扩展目录里边


image.png

image.png


修改配置文件


extension=php_yaconf.dll
[yaconf]
yaconf.directory="D:\phpstudy_pro\WWW\yaconf"
yaconf.check_delay=60


image.png


重启环境,然后查看一下就ok了。


这里需要注意一点就是在复制的时候难免会有一些空格什么乱七八糟的东西,切记删除干净,否则你会知道什么叫难以启齿的柔弱。


image.png


五、Yaconf在window上使用

此时就直接在Yaconf的目录中创建一个ini文件,并且写上如下内容


image.png


控制器直接读取


image.png


经过打印出来的结果也是预期的值


image.png


文件如有改动,则直接重启ngixn即可


image.png


Yaconf提供的另外的一个接口为\Yaconf::has


image.png

image.png


以上就是Yaconf在window上的使用,使用起来还是相对简单的。


这里有一个注意点就是修改了Yaconf的配置文件之后我们需要重启web服务器。

相关文章
|
6月前
|
PHP
thinkphp修改分页配置文件
thinkphp修改分页配置文件
36 0
|
PHP 容器
ThinkPHP你必须要掌握的配置加载(3)
ThinkPHP你必须要掌握的配置加载
145 0
ThinkPHP你必须要掌握的配置加载(3)
|
PHP
ThinkPHP你必须要掌握的配置加载(5)
ThinkPHP你必须要掌握的配置加载
166 0
ThinkPHP你必须要掌握的配置加载(5)
|
XML JSON 数据处理
ThinkPHP你必须要掌握的配置加载(4)
ThinkPHP你必须要掌握的配置加载
132 0
ThinkPHP你必须要掌握的配置加载(4)
|
设计模式 运维 安全
ThinkPHP你必须要掌握的配置加载(6)
ThinkPHP你必须要掌握的配置加载
204 0
ThinkPHP你必须要掌握的配置加载(6)
|
PHP
ThinkPHP你必须要掌握的配置加载(1)
ThinkPHP你必须要掌握的配置加载
146 0
ThinkPHP你必须要掌握的配置加载(1)
|
PHP
ThinkPHP自动加载Loader源码分析(1)
ThinkPHP自动加载Loader源码分析
162 0
ThinkPHP自动加载Loader源码分析(1)
|
PHP
ThinkPHP自动加载Loader源码分析(4)
ThinkPHP自动加载Loader源码分析
135 0
ThinkPHP自动加载Loader源码分析(4)
|
PHP
ThinkPHP自动加载Loader源码分析(2)
ThinkPHP自动加载Loader源码分析
159 0
ThinkPHP自动加载Loader源码分析(2)
|
PHP
ThinkPHP自动加载Loader源码分析(3)
ThinkPHP自动加载Loader源码分析
319 0
ThinkPHP自动加载Loader源码分析(3)