_initialize()和__construct()
今天做用户权限的时候,用到了_initialize()方法来初始化action子类。同时也想到是否可以使用__construct()来实现。
或者两者有什么区别,查了资料。总结一下
_initialize() 为thinkphp封装的函数,__construct 为PHP的构造函数,_initialize就是为了避免我们频繁调用 parent::__construct();
换句话说:调用子类_initialize()的同时也会调用父类的构造函数 __construct() ,但是不能调用父类的_initialize !
如果想调用父类的_initialize(),则还是需要在之类的_initialize里面加上 parent::_initialize()
__construct为PHP类的构造函数,调用子类的构造函数会覆盖父类的构造函数。同时调用则还是需要调用 parent::__construct();