码迷,mamicode.com
首页 > Web开发 > 详细

ThinkPHP实现登录限制时__construct和_initialize的区别

时间:2018-09-13 20:07:44      阅读:334      评论:0      收藏:0      [点我收藏+]

标签:index.php   class   dmi   图片   方法   测试   size   mon   的区别   

ThinkPHP支持两种构造方法:  __construct和_initialize(ThinkPHP内置的构造方法)。

测试URL为:  http://oa.com/index.php/Admin/User/add 

修改用户控制器类文件UserController.class.php 如下:

技术分享图片

1、__construct构造方法

修改中间控制器类CommonController.class.php 如下:

技术分享图片

说明:empty() 5.5 版本之后支持表达式,否则会报如下错误:

技术分享图片

运行结果如下:

技术分享图片

中间控制器必须先构造父类,才能使用父类的方法,修改代码如下:

技术分享图片

 

运行结果:

技术分享图片

 

 2、_initialize构造方法,如下:

技术分享图片

通过_initialize构造方法同样可以实现上述效果,无需构造父类,查看基类控制器代码如下:

技术分享图片

通过Controller.class.php中的架构函数可以看出,只要存在 _initialize方法,就会直接调用来初始化控制器,因此ThinkPHP内置

的构造方法无需再构造父类。

ThinkPHP实现登录限制时__construct和_initialize的区别

标签:index.php   class   dmi   图片   方法   测试   size   mon   的区别   

原文地址:https://www.cnblogs.com/splendid/p/9642219.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!