ThinkPHP笔记二(配置)

我们接着上一篇说,这篇文章我会主要根据配置文件来说,首先,ThinkPHP框架制造者为我们已经制作好了一个配置文件其路径为/thinkphp/convention
这个文件是ThinkPHP运行的必要文件。我们也称之为惯例配置。当然,在开发中我们不推荐开发者更改任何本体框架内容。
在这里插入图片描述


当然,你肯定会问了,我们在一个项目的开发中当我们需要更改配置的时候我们应该怎么办,这时候我们就要引入第二个概念应用配置。使用应用配置我们需要对项目进行如下修改:
1.首先在app同级目录下新建conf目录
2.进入public/index文件,进行如下修改

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

3.在conf目录下新建config.php文件(必须是这个名字)在config文件中我们只需要返回需要的配置即可,下面我在config我做了一个例子:

<?php
return [
    'app_email' => '2676466510@qq.com',
    'app_author' => 'Kexin29'
];

接下来让我们了解一些其他的配置-扩展配置,当我们在开发一个项目的过程中,我们会配置很多的信息,比如cookie等信息,如果将这些信息全部放入应用拓展中整个拓展会非常的混乱且不易管理,所以ThinkPHP开发者为我们带来的拓展配置可以将这些配置分别管理。配置拓展配置我们需要在conf文件夹下创建extra目录,在目录中新建你所需要的拓展配置,在这里我做了一个例子:
在这里插入图片描述
拓展配置中我做的范例:

<?php
return [
    'host' => 'imessage.com',
    'name' => '17771234.com'
];

备注:在ThinkPHP中,开发者允许我们将database配置单独提取到conf或者extra目录下以方便管理,当然,你也可以在其他拓展里重新配置database。


接下来让我们聊一聊场景配置,顾名思义场景配置就是在不同的场景下使用的配置,直接上例子:
首先我们需要在config.php文件中增加一行配置:

<?php
return [
    ::'app_status' => 'home',::
    'app_email' => '2676466510@qq.com',
    'app_author' => 'Kexin29'
];

然后我们需要在conf目录下创建一个home.php的文件

<?php
return [
    'app_address' => 'home'
];

这时我们通过更改不同的场景名称所加载的不同的配置文件从而达到执行不同的场景配置
备注:我们在配置database时,我们需要将database配置下所有的项目全部放入场景配置中。


不知道大家有没有发现,上述所有的配置都有一个共性,就是在配置完成后,所有的配置都是针对全局所修改,不能针对某个模块所单独修改,机智的ThinkPHP开发者为我们提供了强大的模块配置,让我们来了解一下。
配置模块配置时,我们需要在conf目录下新建一个新的目录,名称要与模块名称一致,在这里我用index做范例:
在这里插入图片描述
在index目录下新建config.php文件,这个配置文件只能对index模块起作用而对其他的模块不起作用


最后让我们来了解一下动态配置,让我们直接看一下动态配置的配置方法:
配置动态配置,至今进入app/index/controller/index.php文件,在其中添加动态配置

<?php
namespace app\index\controller;
class Index
{
    public function __construct()
    {
        config('before','beforeAction');
    }

    public function index()
    {
        dump(config());
    }
}

环境的配置,我们在开发中我们会遇到许多系统环境的系统变量的配置,话不多说,直接上代码
首先我们在根目录下新建.env文件
在这里插入图片描述
然后我们在该文件中直接输入信息:

email = 17777123123@qq.com
[database]
hostname = localhost
username = root
password = root

我们可以在模块文件中这样查看自己的环境配置信息(这里有两种方法)

<?php
namespace app\index\controller;
use think\Env;
class Index
{
    public function index()
    {
        //$res = Env::get('email','default');
        //dump($res);
        dump($_ENV);
    }
}

感谢收看,如果有帮助,可以赞助一下,在此表示感谢。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值