php控制器,浅析thinkphp控制器

这次给大家浅析thinkphp控制器,以及构建thinkphp控制器的注意事项有哪些,下面就是实战案例,一起来看一下。

1、公共操作和公共控制器:

a、通过构造方法创建公共操作:构造方法内实现初始化

90263f9a8599d20d5cfb25e7bc8fdc57.png

引入controller类文件的初始化方法:

efd29bc0122827752a877319cc854bd4.png

构造方法或者基类的初始化方法解决了控制器中操作共享数据的问题

如果多个控制器要共享一些,可以创建公共控制器类:Base文件是公共控制器类

bfa3571223cf7bf0a828cc681c9296bf.png

继承公共控制器:

e66ce9a76f5de7abd6357e108cb8d92b.png

2、前置操作:某个操作执行之前必须先执行的操作

a、全部操作都执行相同的前置操作情况

98eb4450a7051e36ed1a1d82f7d11437.png

继承基类中的方法,定义起作用的范围 上面demo2、demo3 方法和demo1一样返回sitename

225f84babab5ec00763a638257d81384.png

访问: 此时访问demo2、demo3 方法显示都是中文网,因为在执行操作前先执行了前置操作方法

9b643206645e9fa0c1a77bc96e0927b1.png

b、前置操作接受参数,参数应该来自url请求,以请求变量为例,用请求变量的获取语句替换原来的$site->sitename

e98fca266cd7c9ceccc309262f29e6a5.png

这里的$this->request来获取当前请求对象,基类request属性对应的就是请求对象的实例:

a8a63176c54d5f97fa01b60bbfc4dd62.png然后调用param方法并给变量名name

访问:

4d5b7de8ec9a539ac760e3f7b5bf4949.png

c、部分执行前置操作的情况:only定义只有访问demo2时才会输出 “坚决抵制萨德”

98ab7266ca9c42743879e88044a36033.png

访问:

2100a5eb6c92a99056cd7de406bb6cee.png

bb0da037d2fe55c2c040c62ccfc29e07.png

d、使用排除法设置前置操作:

bccf3a7e9298717bf7861d9cc0d10b5b.png

2a0d697d07c7ed3d41dab11282f36365.png

访问:

6a15105b54d18795b7b86e823222add7.png

8bf8766c8c992a6a132857fd65049565.png

8628d8e06a27bd3b2a6c048f3a9f5989.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值