首页 > 技术文章 > thinkphp5.1控制器初始化函数initialize与构造函数__construct区别

jcydd 2019-03-22 11:31 原文

构造函数中子类的构造方法会覆盖父类的构造方法,如果要继承父类的构造方法可以加入parent::__construct();

例子:

//另一种方法,使用构造函数初始化
    public function __construct(){        
        //使用父类的构造函数,也就是调用Controller类的构造函数
       parent::__construct(); 
       if(session('username')==null){
          $this->error('请先登录','login/login');
       } 
    }

initialize初始化,,子类的initialize会覆盖父类的,如果要继承父类的initialize方法可以跟构造函数一样,调用parent::initialize();

public function initialize(){        
        
       if(session('username')==null){
          $this->error('请先登录','login/login');
       } 
    }

 

推荐阅读