_initialize()和__construct()

今天做用户权限的时候,用到了_initialize()方法来初始化action子类。同时也想到是否可以使用__construct()来实现。

或者两者有什么区别,查了资料。总结一下

_initialize() 为thinkphp封装的函数,__construct 为PHP的构造函数,_initialize就是为了避免我们频繁调用 parent::__construct(); 

换句话说:调用子类_initialize()的同时也会调用父类的构造函数 __construct() ,但是不能调用父类的_initialize !

如果想调用父类的_initialize(),则还是需要在之类的_initialize里面加上 parent::_initialize() 

 

__construct为PHP类的构造函数,调用子类的构造函数会覆盖父类的构造函数。同时调用则还是需要调用 parent::__construct();

posted @ 2017-09-09 14:57  artstylemo  阅读(180)  评论(0编辑  收藏  举报