QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

切换风格 注册 找回密码

php开发-PHP教程网


查看: 586|回复: 0

[帮助说明] ask2问答如何定义一个控制层类

[复制链接]
发表于 2016-9-14 12:47:35 | 显示全部楼层 |阅读模式
如何定义一个控制层文件
tm9DwlUf.jpg
你会看到control文件夹下很多php文件和文件夹,目录很清晰,admin是后台管理的,app是手机app端的,pccaiji是文章采集使用的控制层文件夹,plugin是插件使用的控制层文件夹,control文件夹下php文件就是前端页面相关的控制层文件。
那么如果在根目录下定义一个新的控制层文件呢,跟着我的步骤来,我们举例说明,新建一个test.php控制层文件,如图:
YMwABG4u.jpg
在control下新建一个test.php文件,结构如图。Testcontrol固定的,文件名+control,
    function testcontrol(& $get, & $post) {
        parent::__construct($get, $post);
      
    }
这是控制层构造函数,写法必须这样,文件名+control(& $get, & $post),
parent::__construct($get, $post);
这个是必须加,目的是继承并实现基类相关属性和函数。
class testcontrol extends base
extends base,表示继承base类,那么base类在什么地方呢,答案在Model下的base.class.php文件里
32msMBu4.jpg
Ondefault()函数当然是方法名,路由解析应该是这样(已经伪静态) :域名/test/default.
NYztEl8u.jpg
如果是default可以省略不写。
我们会看到现在是无权限访问,对,我们路由是会过滤输入的url的,
Bs2qkRX6.jpg
Checkable函数就是检测url规则的,如果你不是管理员就得做权限检测,
你必须把test/default加入到规则白名单,checkable函数在 Model/base.class.php文件里面.
949NuS7w.jpg
如图,现在就可以正常访问了。
PYdWLAfF.jpg
控制层怎么解析模板呢,我们在往下看,假设我们的模板用的是sowenda模板,也就是360模板,
我们把控制层的default函数改改
csUJvQq0.jpg
这样目的是解析到模板下的test文件。我们在sowenda下新建test.html
WCw0Uwhh.jpg
模板在sowenda/test.html,你新建的html模板。
最后会在网页里显示
GglCVGrm.jpg
如果要应用系统网站公共的头部和底部,那么就把模板改成这样
f4teNRCD.jpg
好了,看看结果:
DLoCOoCf.jpg
好了,控制层就说到这。



Archiver|  

662p开源网. Powered by Niuzen

© 2001-2014 Niuzen Inc.

返回顶部