ThinkPHP学习之项目配置与前后台公共配置项

一 项目配置

打开项目文件夹下的/ThinkPHP/Conf/convention.php文件,在该文件中,有很多配置项,其中包含了对于数据库的配置,如下图:



图1

然后我们在创建的前台项目的控制器中(前台项目/Lib/Action/IndexAction),index方法写入如下代码:



图2

在浏览器中运行,可以看到运行结果,就是图1中,DB_USER所对应的键值“root”。

         接下来,修改“前台项目/Conf/Config.php”,在Array数组中,加入如下内容:



图3

此时,在在浏览器中运行Index控制器的index()方法,结果仍为root,这是因为ThinkPHP在第一次运行项目时,生成缓存文件(该缓存文件在“前台项目文件目录/Runtime/~runtime.php”),那么在下一次运行该项目时,就不会再重新读取“Config.php”配置文件,而是直接读取缓存文件。所以我们上面的更改不会生效。在调试阶段,为了使修改内容及时出现,我们可以在前台项目的单入口文件中将调试模式开启,开启方法如下:

<?php
	define('APP_NAME','Index'); //定义项目名称
	define('APP_PATH','./Index/');//定义项目路径
	define('APP_DEBUG','TRUE'); //启动调试模式,使修改及时呈现
	include  './ThinkPhP/ThinkPHP.php';//引入核心文件
?>


      再次运行 Index控制器的index()方法,此时,结果为victor。由此可知,ThinkPHP中的配置文件的优先级低于前台项目的配置文件的优先级。

为了提高项目的灵活性,我们通常不会修改框架ThinkPHP中的配置文件convention.php,而是应该将项目的配置项写在项目的config.php文件中。

二 前后端项目公共配置项

请参考(ThinkPHP学习之ThinkPHP运行,配置)生成一个名为Admin的后台项目,该项目的单入口文件为Admin.php。
        配置结束后,我们的项目文件夹中就含有了两个项目,分别为:前台项目Index和后台项目Admin,并且含有连个单入口文件,分别为:Index.php和Admin.php。对于后台项目文件,若在配置过程中,需要像(一 项目配置)中说的步骤去修改Config.php文件,但是对于同一个项目的前后台项目,他们可能有很多相同的配置项,但是我们不能修改框架的convention.php,那么我们难道只能将相同的配置项配置两次?其实,不然,接下来就来介绍一下上面问题的解决方法:创建公共配置文件。
        我们在项目文件夹下创建Conf文件夹(与前后台项目文件夹同级),并在Conf文件夹下创建config.php文件,在该文件中写入前后台公共配置项,例如:


图 4
并修改前后台项目的config.php文件,修改成:


图 5 后台配置文件



图 6 前台配置文件

        可以看到,我们在$config变量中加入相应项目与其他项目不同的配置,然后与公共配置项合并,并将公共配置项中,相同的配置项覆盖(array_merge函数)。
        至此,就大功告成了!
        在数据库中建立think数据库,并创建名为hd_user的表,表中创建两个属性分别为id和username。我们分别在前后台的Index控制器的index()方法中写入:


图 7
                                                                                         

                          
图 8
在浏览器中分别运行前后台,我们可以看到username的输出结果不相同,而数据库查询到相同的结果。

         详细内容请参考thinkphp官方视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值