ThinkPHP5 模块设计
2018-03-18 本文已影响17人
gg大宇
5.0版本默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配置更改)。
我们在application 下的controller中新建一个Index.php
image.png
编写如图中的代码
而
image.png
这三个index是什么意思呢
当前访问的是index模块下的index控制器下的index方法
我们打开浏览器看下效果
image.png
这就说明我们在访问的是index模块下的index控制器下的index方法
当然 我们这样写网址也行。
image.png
接着我们在application下的admin中创建一个Index.php
image.png
image.png
这个时候我们就进入了admin模块下的这些东西了。
但是有一个特殊的,在application下创建一个common重复之前的步骤。
image.png
这是为什么呢?
这是TP5的一个规定,因为在我们的项目中有很多模块是一些通用的方法。我们需要有一个地方去放置,而tp5则默认把这些通用的模块都放在了这个common这里,他不允许我们在url上直接访问。
那我们怎么使用index呢
我们在index模块下来写
image.png
image.png
类似这种在admin也能做。
因为common是公用的模块,所以也可以用来继承,我们可以写一个其他库依赖的模块,就像下图
image.png
image.png image.png