首页 » PHP » Thinkphp5的配置

Thinkphp5的配置

 

提供了两种配置方式,一种是通过think下的config类,一种是通过config助手函数。

惯例配置

打开public下的index.php文件。然后定义一个常量CONF_PATH,值为根目录的conf文件夹,新建一个conf文件夹,这样在后期维护是很方便的。

在application下新建index模块,同上。代码如下。

访问

http://localhost:2020/thinkphp/public/index/Index/

打印的就是惯例配置,文件在thinkphp目录(框架目录)下的convention.php。

可以测试一下,在convention.php文件里加上如下代码。

然后在浏览器刷新页面,就会显示author的键值对。

应用配置

在开发中是不允许改变框架的任何文件的,如果改变对于后期对框架的升级会带来不变。

应用配置对整个应用有效,在当前应用下的所有模块都可以使用当前配置。

在conf文件夹下新建config.php文件。

这时候配置生效。

如果想改变惯例配置,只需要在config.php文件中配置相同的配置名就可以,会把惯例配置覆盖掉。

扩展配置

在实际开发中,配置项会很多,比如缓存配置、session配置、cookie配置,如果全放在一个文件中,这个文件会变的很大,不容易维护,我们可以拆分为多个文件来进行维护,就用到了扩展配置。

在conf目录中新建extra文件夹,新建一个email.php。

这时候配置项就多了一项,tp会把文件名当作配置项的key,返回值当作value。

有一个特例database,允许database的配置放在conf根目录。

优先级 扩展配置 > 应用配置 > 惯例配置

场景配置

就是在不同场景下使用的配置,比如说公司、家里。

在应用文文件中定义 app_status,给他一个值,比如现在在加里,就赋值home。

在conf目录下新建一个home.php。

这时候配置项就多出一个app_address的配置项,值为home。

如果我们在公司里,那么把app_status赋值为office。

在conf目录下新建office.php。

这时候配置项app_address的值为office。

比如数据库的密码,公司和家里的不一样,在不同环境下,只需要改变app_status的值就可以,不用改变其他。

在场景配置下,如果需要配置数据库,需要配置所有项。

模块配置

以上配置都是对整个应用的配置,所有模块都能使用,模块配置是指为模块单独做一个配置。

在conf目录下新建一个文件夹,文件夹名和需要配置的模块名一样,比如index。

在index文件夹下新建config.php,在这里做的配置只对index模块有效。也可以在index里新建一个扩展配置的目录。

动态配置

主要用于当前控制器或者是某个方法里面进行动态的配置改变或者是动态的配置设置。

在index模块的控制器里

这样就设置了before和indexAction的配置项,before仅在当前控制器有效,而indexAction仅在index方法里有效。

原文链接:Thinkphp5的配置,转载请注明来源!

0