当前位置: 移动技术网 > IT编程>开发语言>PHP > ThinkPHP实现登录限制时__construct和_initialize的区别

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

2018年09月14日  | 移动技术网IT编程  | 我要评论
ThinkPHP支持两种构造方法: __construct和_initialize(ThinkPHP内置的构造方法)。 测试URL为: http://oa.com/index.php/Admin/User/add 修改用户控制器类文件UserController.class.php 如下: 1、__ ...

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内置

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

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网